国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android Spinner與適配器模式詳解及實例代碼

2019-10-23 20:09:06
字體:
來源:轉載
供稿:網友

最近做項目對Android Spinner 使用,這里簡單寫個小例子,來測試如何使用。

Spinner

是一個下拉列表,往安卓界面中拖拽一個Spinner控件,在屬性中設置Android:entries=“@array/spinner_data”
其中spinner_data為在string中設置的數組。數組中由固定寫好的值。此時便可在界面設置好下拉列表。

<Spinner     android:id="@+id/spinner1"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:layout_alignLeft="@+id/textView1"     android:layout_below="@+id/textView1"     android:layout_marginTop="17dp"     android:entries="@array/spinner_data"/> 

當然為了用戶體驗好,可以設置 android:spinnerMode="dialog"屬性,可以使下拉列表有彈出框。

適配器:

適配器主要負責從數據源中抓取數據,傳向各個UI組件。主要的適配器adapter由ArrayAdapter和BaseAdapter。 即適配器負責從某個數據源比如數組中得到數據傳向Spinner,顯示在界面上。

首先定義數據源

private String[] ss=new String[]{     "貓咪",     "老虎",     "獅子",          }; 

數據源2

private List<String> list=new ArrayList<String>(); list.add("百度");     list.add("騰訊");     list.add("阿里巴巴"); 

其次定義一個類Myadapter繼承與抽象類BaseAdapter,抽象方法有四個。

private class Myadapter extends BaseAdapter{    @Override   public int getCount</span>() {     // TODO Auto-generated method stub     return ss.length;   }    @Override   public Object getItem(int position) {     // TODO Auto-generated method stub     return null;   }    @Override   public long getItemId(int position) {     // TODO Auto-generated method stub     return 0;   }    @Override   public View getView</span>(int position, View convertView, ViewGroup parent) {     // TODO Auto-generated method stub     TextView textView=new TextView(MainActivity.this);     textView.setText(ss[position]);          return textView;   } 

然后再主函數中

Spinner spinner=(Spinner) findViewById(R.id.spinner1);     BaseAdapter adapter=new Myadapter();     spinner.setAdapter(adapter); 

先找到Spinner控件,并且實例化new一個adapter。通過adapter適配器來抓取數據源ss中的數據。

BaseAdapter適配器最重要的方法是getcount()以及getview()方法。前者返回數據源的長度,后者進行一些操作。

當然可以使用更簡單的ArrayAdaper適配器。

Spinner spinner=(Spinner) findViewById(R.id.spinner1);     ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,ss);     spinner.setAdapter(adapter); 

通過以上語句,可以直接定位在數組ss中。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 柳林县| 鹤壁市| 安丘市| 安康市| 白城市| 平乡县| 江山市| 大英县| 房产| 得荣县| 阳高县| 上饶县| 罗山县| 兴国县| 胶州市| 尼勒克县| 南开区| 贺州市| 赤峰市| 岚皋县| 林甸县| 扎赉特旗| 隆安县| 西峡县| 报价| 凤翔县| 高要市| 凤凰县| 河西区| 镇沅| 布尔津县| 施甸县| 南宫市| 武清区| 苍溪县| 商都县| 鞍山市| 阿拉善右旗| 任丘市| 平利县| 乌拉特后旗|