andriod的可视化UI组件 可简单分下类:
1.UI类都是view的子类,最主要的是viewgroup,也就是布局类。
2.Basic view 。按钮button edieText textview
3.picker view,你包括时间和日期
4,list view与 spiner 大量显示view
5.Menus 菜单view
本文主要记录下spiner下拉列表:
1.在String.xml中的Resources节点下加入
<string-array name="spinnerDate">
<item>XXX</item>
<item>YYY</item>
<item>ZZZ</item>
<item>WWW</item>
</string-array>
2.在布局文件中加入:
下拉列表显示
<Spinner
andriod:id="@id/spinner"
andriod:layout_width="wrap_content"
andriod:layout_height="wrap_content"
andriod:entries="@array/spinnerDate"
/>
弹出框显示
<Spinner
andriod:id="@id/spinner1"
andriod:layout_width="wrap_content"
andriod:layout_height="wrap_content"
andriod:spinnerMode="@array/spinnerDate"
andriod:spinnerMode=“dialog”
/>
当然也可以在在代码中动态得到下拉显示。
private String[] ss=new String[] {
"xx","yy","zz"
}
private List<> list1=newArrayList<>();
在onCreate下:
//数据源需要放入list或Array,但官方只提供一adapter适配器模式(将需要交换数据的对象通过适配的接口适配给所有用户使用)。
//将一组数据传递给listView Spinner Gallery等UI显示组件。所有的Adapter继承自BaseAdapter。
eg:
list.add("XX");
list.add("yy");
list.add("zz");
Spinner spin=(Spinner)findViewById(R.id.spinner);
BaseAdapter adapter =new MyAdapter();
spin.setAdapter();//会使用adapter方法查抄数据
//建立一个适配器:
private class MyAdapter extends BaseAdapter{
@override
public int getCount(){
return ss.length; //循环String遍历,返回数据源长度
return list.size ; //循环list遍历,返回数据源长度
}
@override
public Object getItem(int position){
return null; //返回数据源长度
}
@override
public View getView (int position,View converView,ViewGroup parent){
//此处可以填写所要显示的下拉内容
return null; //每次获取一次生成一个下拉列表的内容
}
}
第二种建立适配器方法:
ArrayAdapter<String> adapter =new ArrayAdapter<String>(this,自己写的布局或者R.layout.simple_spinner_item(默认布局),ss);
============================S=======================
最后当选中item时的的响应处理:
spinner.setOnItemSelectListener( new OnItemSelectListener){
@override
public void onItemSelected(AdapterView<?> arg0,View arg1,int position,long id){
//方法1
}
@override
public void onNothingSelected(AdapterView<?> arg0){
//方法2
}
});
===============常用适配器======================
baseAdapter需要重写方法,灵活。
ArrayAdapter 数组适配器,展示文本
SimpleAdapter 功能强大的简约适配器
SimpleCusorAdapter 数据库适配器