安卓|自动完成文本框以及如何创建
原文:https://www . geesforgeks . org/Android-auto-complete-textbox-以及如何创建它/
先决条件:
安卓 自动完成文本视图用于自动完成单词。每当用户书写一个字符时,自动完成文本视图将显示用户可以选择的单词的建议。自动完成文本视图是编辑文本的子类。
例如:
自动完成文本视图提供以下方法:
- setThreshold() 方法开始第一个字符中的建议词。
- setAdapter() 方法设置 AutoCompleteTextView 中的所有数据。
- setTextColor 这是用于黑色的文本。
如何创建安卓应用来使用自动完成文本视图
这个例子将有助于开发一个安卓应用程序,根据上面显示的例子创建自动完成文本视图: 一些颜色存储在字符串数组中。现在单词显示在列表中,所以我们使用 ArrayAdapter 类。 ArrayAdapter 类用于将颜色字符串数组的数据保存为如下所示的列表项,然后在 AutoCompleteTextView 中设置上述所有方法。
示例:
以下是创建报警对话框安卓应用的步骤:
步骤 1: 首先创建一个新的安卓应用。这将创建一个 XML 文件“activity_main.xml”和一个 Java 文件“MainActivity”。Java”。请参考先决条件以了解有关此步骤的更多信息。
步骤 2: 打开“activity_main.xml”文件,在相对布局中添加以下小部件:
- 显示信息的文本视图
- A 自动完成文本查看借助自动完成建议获取用户答案。
此外,将 标识 以及其他属性分配给每个组件,如下图和代码所示。组件上分配的标识有助于在 Java 文件中轻松找到和使用该组件。
语法:
android:id="@+id/id_name"
这里给定的标识如下:
- 自动完成 xtView:Android:id = " @+id/自动完成 xtview "
这将使应用程序的用户界面。
第三步:现在,在 UI 之后,这一步将创建 App 的后端。为此,请打开“MainActivity.java”文件,并使用 findViewById()方法实例化在 XML 文件(AutoCompleteTextView)中制作的组件。此方法借助于分配的标识将创建的对象绑定到用户界面组件。 通用语法:
组件类型对象=(组件类型)findviewbyid(r . id . idfthek 组件);
所用组件的语法:
autocomputextview autocomputextview =(autocomputextview)findviewbyid(r . id . autocomputextview);
步骤 4: 该步骤包括在自动完成文本视图上设置操作。这些操作如下:
1.创建字符串数组并存储建议中显示的颜色值。
String[] colors = {“红色”、“绿色”、“黑色”、“橙色”、“蓝色”、“粉色”、“腮红”、“棕色”、“黄色”};
2.用字符串创建 ArrayAdapter 对象,该对象将数据保存为列表项。
ArrayAdapter 适配器=新 ArrayAdapter(这个,安卓。R.layout.select_dialog_item,colors);
ArrayAdapter 类用于将颜色字符串数组的数据保存为如下所示的列表项,然后在 AutoCompleteTextView 中设置上述所有方法。
3.将阈值设置为 1,表示给出建议的字母数量。这里设置为 1 个字符。
自动完成的 xtview . setthrehold(1);
4.为作为列表传递的数据设置适配器。
自动完成的 xtView.setAdapter(适配器);
第 5 步:现在运行应用程序,操作如下:
- 当应用程序打开时,它会显示一条消息,输入颜色名称,并在下方显示一个文本框,以获得用户响应。
- 当输入一个字符时,会显示以输入文本开始的建议,用户可以从中进行选择。
自动完成视图的 MainActivity.java 或 activity_main.xml 的完整代码如下。
activity_main.xml
可扩展标记语言
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:layout_marginLeft="80dp"
android:text="Write the color name !"
android:textSize="20dp"
android:textStyle="bold" />
<AutoCompleteTextView
android:id="@+id/autocompleteTextView"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_marginTop="120dp"
android:layout_marginLeft="90dp"
/>
</RelativeLayout>
MainActivity.java
Java 语言(一种计算机语言,尤用于创建网站)
package org.geeksforgeeks.navedmalik.autocompletetextview;
import android.arch.lifecycle.AndroidViewModel;
import android.graphics.Color;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// By ID get the AutoCompleteTextView
// which id is assign in xml file
AutoCompleteTextView
autoCompleteTextView
= (AutoCompleteTextView)
findViewById(
R.id.autocompleteTextView);
// Create the string array
// and store the values.
String[] colors
= { "Red", "Green", "Black",
"Orange", "Blue", "Pink",
"Blush", "Brown", "Yellow" };
// Create the object of ArrayAdapter with String
// which hold the data as the list item.
ArrayAdapter<String> adapter
= new ArrayAdapter<String>(
this,
android.R.layout.select_dialog_item,
colors);
// Give the suggestion after 1 words.
autoCompleteTextView.setThreshold(1);
// Set the adapter for data as a list
autoCompleteTextView.setAdapter(adapter);
autoCompleteTextView.setTextColor(Color.BLACK);
}
}
输出:
版权属于:月萌API www.moonapi.com,转载请注明出处