Spinner(下拉窗)和AutoCompleteTextView

这两个一样的用法,功能有所不同。
spinner是下拉选择框,AutoCompelteTextView是打两个字母有提示(类似搜索),效果:

布局中加个同名控件
   <Spinner
android:id="@+id/spinner_first"
android:layout_width="match_parent"
android:layout_height="wrap_content"></Spinner>

</LinearLayout>
首先fingviewById、用的ArrayAdapter(简便),然后启动adapter
private Spinner mSpinner;
private ArrayAdapter<String> mAdapter;
private String[] mData={"hehe","haha","wangwang","zizi","zhizhi","sisi"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// mAutoCompleteTextView= (AutoCompleteTextView) findViewById(R.id.auto_textview);
//mAdapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,mData);
mSpinner= (Spinner) findViewById(R.id.spinner_first);
mAdapter=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,mData);
mSpinner.setAdapter(mAdapter);
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SpinnerAndroid 中的一种控件,用于提供一个下拉菜单,用户可以选择其中一个选项。在 Android 开发中,使用 Spinner 可以快速创建一个下拉菜单,通常用于选择数据。 以下是 Spinner 的详细用法和案例: 1. 在布局文件中添加 Spinner 在布局文件(比如 activity_main.xml)中添加一个 Spinner 控件: ```xml <Spinner android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="wrap_content"/> ``` 2. 创建数据源 在 Java 代码中定义一个数组或列表,存储 Spinner 中的选项内容: ```java String[] items = {"选项1", "选项2", "选项3"}; ``` 3. 创建 ArrayAdapter 通过 ArrayAdapter 类创建适配器,绑定数据源和 Spinner 控件: ```java ArrayAdapter<String> adapter = new ArrayAdapter<>( this, android.R.layout.simple_spinner_item, items ); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); Spinner spinner = findViewById(R.id.spinner); spinner.setAdapter(adapter); ``` 4. 设置监听器 通过添加 AdapterView.OnItemSelectedListener 接口来监听 Spinner 中的选项选中事件: ```java Spinner spinner = findViewById(R.id.spinner); spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { String selectedItem = parent.getItemAtPosition(position).toString(); Toast.makeText(MainActivity.this, "选中了:" + selectedItem, Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); ``` 注意事项: - ArrayAdapter 构造方法的第一个参数是上下文,第二个参数是 Spinner 中每个选项的布局,第三个参数是数据源。 - setDropDownViewResource 方法用于设置下拉菜单中选项的布局。 - OnItemSelectedListener 接口中的 onItemSelected 方法会在用户选择一个选项后被调用,可以在该方法中处理对应的逻辑。 - 可以通过 getItemAtPosition 方法获取选中的选项。 完整的 MainActivity.java 代码: ```java import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.Toast; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); String[] items = {"选项1", "选项2", "选项3"}; ArrayAdapter<String> adapter = new ArrayAdapter<>( this, android.R.layout.simple_spinner_item, items ); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); Spinner spinner = findViewById(R.id.spinner); spinner.setAdapter(adapter); spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { String selectedItem = parent.getItemAtPosition(position).toString(); Toast.makeText(MainActivity.this, "选中了:" + selectedItem, Toast.LENGTH_SHORT).show(); } @Override public void onNothingSelected(AdapterView<?> parent) { } }); } } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值