Spinner下拉列表

来源:互联网 发布:比特币矿池源码 编辑:程序博客网 时间:2024/05/15 23:54
package com.example.administrator.spinner;import android.content.Context;import android.support.v7.app.ActionBarActivity;import android.os.Bundle;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 android.widget.Toast;import java.lang.reflect.Array;import java.util.ArrayList;import java.util.HashMap;import java.util.List;import java.util.Map;import java.util.HashMap;public class MainActivity extends ActionBarActivity implements Spinner.OnItemSelectedListener{    private TextView textView;    private Spinner spinner;    private List data;    private List<Map<String,Object>> data_list;    private Context mContext;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        mContext = this;        textView = (TextView)findViewById(R.id.text);        spinner = (Spinner)findViewById(R.id.spinner);        //1 数据源        data = new ArrayList();        data.add("北京");        data.add("上海");        data.add("广州");        data.add("重庆");        data_list = new ArrayList<Map<String , Object>>();        //2 适配器        ArrayAdapter adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,data);        SimpleAdapter s_adapter = new SimpleAdapter(this,getData(),R.layout.item,new String[]{"text","pic"},new int[]{R.id.text,R.id.pic});        //3 适配器样式        //adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);        adapter.setDropDownViewResource(R.layout.item);        //4 注入适配器       // spinner.setAdapter(adapter);        spinner.setAdapter(s_adapter);        spinner.setOnItemSelectedListener(this);    }    @Override    public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {        textView.setText(spinner.getItemAtPosition(position).toString());    }    @Override    public void onNothingSelected(AdapterView<?> parent) {        Toast.makeText(mContext,"NotingSelected",Toast.LENGTH_SHORT);    }    private List<Map<String,Object>> getData(){        Map<String,Object> map = new HashMap<String, Object>();        map.put("text","上海");        map.put("pic",R.mipmap.ic_launcher);        data_list.add(map);        map = new HashMap<String, Object>();        map.put("text","北京");        map.put("pic",R.mipmap.ic_launcher);        data_list.add(map);        map = new HashMap<String, Object>();        map.put("text","深圳");        map.put("pic",R.mipmap.ic_launcher);        data_list.add(map);        map = new HashMap<String, Object>();        map.put("text","广州");        map.put("pic",R.mipmap.ic_launcher);        data_list.add(map);        return data_list;    }}

item.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"    android:layout_height="match_parent" tools:context=".MainActivity">   <ImageView       android:layout_width="wrap_content"       android:layout_height="wrap_content"       android:src="@mipmap/ic_launcher"       android:id="@+id/pic"       />    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:id="@+id/text"        android:text="文字"        android:layout_toRightOf="@id/pic"        android:textSize="20sp"        android:layout_marginTop="10dp"        /></RelativeLayout>

ArrayAdapter
SimpleAdapter

0 0
原创粉丝点击