這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)如何在Android應(yīng)用中利用Spinner實現(xiàn)一個下拉列表功能,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
創(chuàng)新互聯(lián)于2013年創(chuàng)立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站設(shè)計、成都網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元天全做網(wǎng)站,已為上家服務(wù),為天全各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575
Spinner
Spinner是一個列表選擇框,會在用戶選擇后,展示一個列表供用戶進行選擇。Spinner是ViewGroup的間接子類,它和其他的Android控件一樣,數(shù)據(jù)需要使用Adapter進行封裝。
布局代碼
//(layout)activity_main <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/activity_main" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.test.spinner.MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <TextView android:textSize="20sp" android:layout_margin="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="今年的常規(guī)賽MVP:"/> <TextView android:id="@+id/text" android:textSize="20sp" android:layout_marginTop="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout> <Spinner android:visibility="gone" android:id="@+id/spinner" android:layout_marginLeft="10dp" android:layout_width="wrap_content" android:layout_height="wrap_content"> </Spinner> </LinearLayout> ------------------------------------------------------------------- //(layout)item <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="wrap_content" android:layout_height="wrap_content" android:gravity="center_vertical"> <ImageView android:id="@+id/imageView" android:layout_width="80dp" android:layout_height="80dp"/> <TextView android:id="@+id/textView" android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content"/> </LinearLayout>
3,Activity代碼
//MainActivity import android.content.Context; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.SimpleAdapter; import android.widget.Spinner; import android.widget.TextView; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import static com.test.spinner.R.id.simpleAdapter; public class MainActivity extends AppCompatActivity { private Context mContext = MainActivity.this; private Spinner mSpinner; private ArrayAdapter<String> mArrayAdapter; private TextView mTextView; private SimpleAdapter mSimpleAdapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); initView(); initData(); } private void initView(){ mSpinner = (Spinner) findViewById(R.id.spinner); mTextView = (TextView) findViewById(R.id.text); } private void initData(){ // 設(shè)置數(shù)據(jù)集 List<String> list = new ArrayList<>(); list.add("哈登"); list.add("萊昂納德"); list.add("詹姆斯"); list.add("威斯布魯克"); List<Map<String ,Object>> maps = new ArrayList<>(); int[] icon = {R.mipmap.pic1 , R.mipmap.pic2, R.mipmap.pic3, R.mipmap.pic4}; String[] iconName = {"哈登" , "萊昂納德" , "詹姆斯" , "威斯布魯克"}; // 設(shè)置適配器 mArrayAdapter = new ArrayAdapter<>(mContext , android.R.layout.simple_spinner_item , list); mArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); mSimpleAdapter = new SimpleAdapter(mContext, maps , R.layout.item , new String[]{"image" , "text"} , new int[]{R.id.imageView ,R.id.textView}); for(int i = 0 ; i < icon.length ; i++){ Map<String ,Object> map = new HashMap<>(); map.put("image", icon[i]); map.put("text" , iconName[i]); maps.add(map); } } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main , menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()){ case R.id.arrayAdapter: mSpinner.setVisibility(View.VISIBLE); mSpinner.setAdapter(mArrayAdapter); // 設(shè)置監(jiān)聽器 mSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> adapterView, View view, int position, long id) { mTextView.setText(mArrayAdapter.getItem(position)); } @Override public void onNothingSelected(AdapterView<?> adapterView) { } }); break; case simpleAdapter: mSpinner.setVisibility(View.VISIBLE); mSpinner.setAdapter(mSimpleAdapter); // 設(shè)置監(jiān)聽器 mSpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> adapterView, View view, int position, long id) { mTextView.setText(mSimpleAdapter.getItem(position)+""); } @Override public void onNothingSelected(AdapterView<?> adapterView) { } }); break; default: break; } return super.onOptionsItemSelected(item); } }
上述就是小編為大家分享的如何在Android應(yīng)用中利用Spinner實現(xiàn)一個下拉列表功能了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
新聞標(biāo)題:如何在Android應(yīng)用中利用Spinner實現(xiàn)一個下拉列表功能
文章轉(zhuǎn)載:http://muchs.cn/article34/pipppe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、企業(yè)網(wǎng)站制作、手機網(wǎng)站建設(shè)、軟件開發(fā)、網(wǎng)站維護、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)