Spinner有倆種實現方式,除去存儲數據與讀取數據不同的話,其他并沒有什么區別
Effect :

第一種:
在Res目錄下,找到values文件夾下arrays.xml進行資源存儲
<string-array name="state"> <item >今日</item> <item >昨日</item> <item >本周</item> <item >上周</item> <item >本月</item> <item >上月</item> </string-array>
在代碼中讀取資源:
String[] mItems = getResources().getStringArray(R.array.state);
第二種:
在代碼中進行數據源的存儲與讀取,這篇文章中我將使用這種方式進行實現
MainActivity :
package com.example.dow.spinner;import android.support.v7.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.TextView;import org.w3c.dom.Text;import java.util.ArrayList;public class MainActivity extends AppCompatActivity { private Spinner mSpinner; private TextView mTv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mSpinner = (Spinner) findViewById(R.id.sp_btn); //只是為了展示我們的實現效果,故可不要 mTv = (TextView) findViewById(R.id.tv_content); //數據源 ArrayList<String> spinners = new ArrayList<>(); spinners.add("今日"); spinners.add("昨日"); spinners.add("本周"); spinners.add("上周"); spinners.add("本月"); spinners.add("上月"); //設置ArrayAdapter內置的item樣式-這里是單行顯示樣式 final ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, spinners); //這里設置的是Spinner的樣式 , 輸入 simple_之后會提示有4人,如果專屬spinner的話應該是倆種,在特殊情況可自己定義樣式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_item); //設置Adapter了 mSpinner.setAdapter(adapter); //監聽Spinner的操作 mSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { //選取時候的操作 @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { mTv.setText(adapter.getItem(position)); } //沒被選取時的操作 @Override public void onNothingSelected(AdapterView<?> parent) { mTv.setText("No anything"); } }); }}MainActivity Xml :
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="com.example.dow.spinner.MainActivity"> <Spinner android:padding="5dp" android:layout_gravity="center" android:layout_width="60dp" android:layout_height="wrap_content" android:id="@+id/sp_btn" /> <TextView android:padding="5dp" android:layout_gravity="center" android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/tv_content" /></LinearLayout>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答