Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android -- Spinner && AutoCompleteTextView

Android -- Spinner && AutoCompleteTextView

編輯:關於Android編程

Android給我們提供了一個Spinner控件,這個控件主要就是一個列表,Spinner位於 android.widget包下,每次只顯示用戶選中的元素,當用戶再次點擊時,會彈出選擇列表供用戶選擇,而選擇列表中的元素同樣來自適配器。Spinner是View類得一個子類。   復制代碼 package com.yydcdut.spinnerstudy;   import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.Toast;   public class MainActivity extends Activity {       private Spinner spinner;       @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         spinner = (Spinner) findViewById(R.id.spiiner);         ArrayAdapter<String> adapter = new ArrayAdapter<String>(                 getApplicationContext(), android.R.layout.simple_spinner_item);         adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);         adapter.add("123");         adapter.add("321");         adapter.add("123321");         spinner.setAdapter(adapter);         spinner.setOnItemSelectedListener(new OnItemSelectedListener() {               @Override             public void onItemSelected(AdapterView<?> parent, View view,                     int position, long id) {                   Spinner spinner1 = (Spinner) parent;                 String content = (String) spinner1.getItemAtPosition(position);// 取得與Spinner關聯的列表數據的指定位置的數據                 Toast.makeText(getApplicationContext(),                         "position-->" + position + "內容-->" + content,                         Toast.LENGTH_LONG).show();             }               @Override             public void onNothingSelected(AdapterView<?> parent) {                 // TODO 自動生成的方法存根               }         });     }   } 復制代碼 接下來我們通過更換adapter.setDropDownViewResource(android.R.layout.test_list_item);裡面的xml參數來看一看彈出的樣式    AutoCompleteTextView                                                              復制代碼 public class MainActivity extends Activity {       @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);           String[] names = { "z11", "z22", "z33", "a44", "a55" };         AutoCompleteTextView auto = (AutoCompleteTextView) findViewById(R.id.auto);         ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,                 android.R.layout.simple_dropdown_item_1line, names);         auto.setAdapter(adapter);       }   } 復制代碼 AutoCompleteTextView是實現動態匹配輸入的內容。如google搜索引擎當輸入文本時可以根據內容顯示匹配的熱門信息。   雖然AutoCompleteTextView不是Android的常用控件,但是它的實用性還是很強的,具體的使用可以參考ApiDemos,對於基本的用法,它有很詳細的說明。但是這些例子遠遠無法滿足我們的需求,下面講一下幾個例子中沒有涉及到的屬性。   completionThreshold:它的值決定了你在AutoCompleteTextView至少輸入幾個字符,它才會具有自動提示的功能。另,默認最多提示20條。 dropDownAnchor:它的值是一個View的ID,指定後,AutoCompleteTextView會在這個View下彈出自動提示。 dropDownSelector:應該是設置自動提示的背景色之類的,沒有嘗試過,有待進一步考證。 dropDownWidth:設置自動提示列表的寬度。
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved