android适配器
適配器種類和作用
適配器:兩個不兼容的接口之間的橋梁。
比如:顯卡與顯示器,要顯卡驅動才能讓顯卡處理的信息在顯示器上顯示。顯卡驅動就是橋梁。
高級控件放到Activity上不顯示數據,這時要將數據給適配器,適配器再給顯示到Activity。
2.1 作用
2.1.1 橋梁:通過適配器將后臺數據與高級組件鏈接起來
2.1.2 展示:將數據展示出來
2.2 適配器分類
2.2.1 數組適配器 ArrayAdapter
聲明數組適配器:private ArrayAdapter myArrayAdapter
new ArrayAdapter(this,R.layout.actv_style, names);
高級控件使用步驟
3.1 獲取數據 如:this.data = loadData();
3.2 創建適配器 如:myArrayAdapter = new ArrayAdapter(this, 0, data);
注意:0表示是數據通過適配器展示的方式,一般有兩種:
(1)用android自帶的版式:anroid.R.layout.simple_list_item_1
(2)自定義一個布局版式:res - layout - myItem.xml - 根元素TextView,……
3.3 綁定適配器 如:actv_main_actv1.setAdapter(myArrayAdapter);
高級控件之:自動提示文本框
4.1 AutoCompleteTextView(單一提示)
android:completionThreshold=”1” //輸入幾個字符開始提示,一般輸入1個字就開始提示
android:completionHint=”提示” //提示字符
如果輸入之后還希望再次提示,可使用下面多次提示控件。
4.2 MultiAutoCompleteTextView(多次提示)–作業
添加如下代碼:
//設置多次提示時,設置分隔符方法
Tokenizer t = new MultiAutoCompleteTextView.CommaTokenizer();
控件名.setTokenizer(t);
應用場景
4.3 兩種自動提示文本框的異同
AutoCompleteTextView:支持基本的自動完成功能,適用在各種搜索功能中,并且可以根據自己的需求設置他的默認顯示數據
MultiAutoCompleteTextView: 可支持選擇多個值(在多次輸入的情況下),分別用分隔符分開,并且在每個值選中的時候再次輸入值時會自動去匹配。
可用在發短信,發郵件時選擇聯系人這種類型當中。
Spinner下拉框
5.1 屬性
android:entries = “@array/data” //設置下拉列表項
5.2 操作
5.2.1 創建一個下拉列表框
5.2.2 定義數據和適配器
String[] provices={“湖南省”,”湖北省”};
ArrayAdapter myAdapter = new ArrayAdapter(this, anroid.R.layout.simple_list_item_1, privices);
5.2.3 設置適配器
控件.setAdapter(myAdapter);
5.2.4 設置下拉列表框選擇監聽
控件.setOnItemSelectedListener(new onItemSelectedListener(){
Toast.markText(this, “你選擇了:”+provices[i], Toast.LENGTH_LONG).show();
});
//兩個方法,參數itme i就是選中的
//可Toast輸出用戶當前選中的項
–請選擇省–
湖南省
湖北省
–請選擇市–
長沙市
株洲市
素材
String[] names = { “憤怒的小鳥”, “湯姆貓”, “落湯雞”, “牛牛”, “哈巴狗”, “神龍”, “烤鴨”,
“小象”, “美人魚”, “九尾狐” };
int[] images = { R.drawable.bird, R.drawable.cat, R.drawable.chicken,
R.drawable.cow, R.drawable.dog, R.drawable.dragon,
R.drawable.duck, R.drawable.elephant, R.drawable.fish,
R.drawable.fox };
事件監聽
AdapterView.OnItemSelectedListener
思想:一個項目中有多處用到選擇框,可以創建一個Options類(value,text)用于處理所有的選擇框。
具體實現:
總結
以上是生活随笔為你收集整理的android适配器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Nginx限速详解
- 下一篇: colorbox ajax,Colorb