package com.example.administrator.spinner;
import android.app.Activity; import android.content.Intent; 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.Button; import android.widget.Spinner; import android.widget.Toast; import java.util.ArrayList; import java.util.List; //http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0105/2264.html public class MainActivity extends Activity implements View.OnClickListener { private String[] mItems; private Spinner spinner; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button=(Button) findViewById(R.id.button); Button button1=(Button)findViewById(R.id.button1); button1.setOnClickListener(this); button.setOnClickListener(this); //数据源在布局文件中指定,android:entries="@array/languages // // Spinner spinner = (Spinner) findViewById(R.id.spinner1); // spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { // // // String[] languages = getResources().getStringArray(R.array.languages); // Toast.makeText(MainActivity.this, "你点击的是" + languages[position], Toast.LENGTH_LONG).show(); // // // } // // @Override // public void onNothingSelected(AdapterView<?> parent) { // // } // }); //数据源在代码中获得 // 初始化控件 spinner = (Spinner) findViewById(R.id.spinner1); // 建立数据源 // mItems = getResources().getStringArray(R.array.languages); List<String> list= new ArrayList<>(); list.add("111"); list.add("222"); list.add("333"); list.add("444"); // 建立Adapter并且绑定数据源 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);//list或者mItems数组都行 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //绑定 Adapter到控件 spinner.setAdapter(adapter); // spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { // @Override // public void onItemSelected(AdapterView<?> parent, View view, // int pos, long id) { // String[] languages = getResources().getStringArray(R.array.languages); // // //在setOnItemSelectedListener通过mItems[pos]来获取当前选中位置返回的数据 // Toast.makeText(MainActivity.this, "你点击的是:" + mItems[pos], Toast.LENGTH_LONG).show(); // Toast.makeText(MainActivity.this, "你点击的是:" + spinner.getSelectedItem().toString(), Toast.LENGTH_LONG).show(); // //spinner.getSelectedItem().toString()返回当前选中的位置的数据 // ; // // } // // @Override // public void onNothingSelected(AdapterView<?> parent) { // // Another interface callback // } // }); chongzhi_recharge_money.getSelectedItem().toString(); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button: Toast.makeText(MainActivity.this, "当前选中的是:" + spinner.getSelectedItem(), Toast.LENGTH_LONG).show(); break; case R.id.button1: startActivity(new Intent(this,Main2Activity.class)); break; default: break; } }}
布局文件
<?xml version="1.0" encoding="utf-8"?> <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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.administrator.spinner.MainActivity"> <Spinner android:id="@+id/spinner1" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="提交" android:id="@+id/button" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="下一页" android:id="@+id/button1" android:layout_above="@+id/button" android:layout_centerHorizontal="true" android:layout_marginBottom="116dp" /> </RelativeLayout> <!--android:entries="@array/languages"-->
![]()
package com.example.administrator.spinner; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Spinner; import android.widget.Toast; import java.util.ArrayList; import java.util.List; public class Main2Activity extends AppCompatActivity implements View.OnClickListener { private Spinner spinner2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main2); Button button = (Button) findViewById(R.id.button2); button.setOnClickListener(this); // 初始化控件 spinner2 = (Spinner) findViewById(R.id.spinner2); // 建立数据源 List<Person> persons = new ArrayList<Person>(); persons.add(new Person("张三", "上海 ")); persons.add(new Person("李四", "上海 ")); persons.add(new Person("王五", "北京")); persons.add(new Person("赵六", "广州 ")); // Person p=new Person("",""); // p.getPersonName() // p.getPersonAddress() // 建立Adapter绑定数据源 MyAdapter _MyAdapter = new MyAdapter(this, persons); //绑定Adapter spinner2.setAdapter(_MyAdapter); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.button2: Person p=(Person) spinner2.getSelectedItem(); Toast.makeText(Main2Activity.this, "当前选中的是:"+p.getPersonName() , Toast.LENGTH_LONG).show(); break; default: break; } } }
package com.example.administrator.spinner; import android.widget.BaseAdapter; import java.util.List; import android.content.Context; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.ImageView; import android.widget.TextView; /** * Created by Administrator on 2016/9/28. */ public class MyAdapter extends BaseAdapter{ private List<Person> mList; private Context mContext; public MyAdapter(Context pContext, List<Person> pList) { this.mContext = pContext; this.mList = pList; } @Override public int getCount() { return mList.size(); } @Override public Object getItem(int position) { return mList.get(position); } @Override public long getItemId(int position) { return position; } /** * 下面是重要代码 */ @Override public View getView(int position, View convertView, ViewGroup parent) { LayoutInflater _LayoutInflater=LayoutInflater.from(mContext); convertView=_LayoutInflater.inflate(R.layout.item_custom, null); if(convertView!=null) { ImageView imageView = (ImageView)convertView.findViewById(R.id.image); imageView.setImageResource(R.mipmap.ic_launcher); TextView _TextView1=(TextView)convertView.findViewById(R.id.textView1); TextView _TextView2=(TextView)convertView.findViewById(R.id.textView2); _TextView1.setText(mList.get(position).getPersonName()); _TextView2.setText(mList.get(position).getPersonAddress()); } return convertView; } }
package com.example.administrator.spinner; /** * Created by Administrator on 2016/9/28. */ public class Person { private String personName; private String personAddress; public Person(String personName, String personAddress) { super(); this.personName = personName; this.personAddress = personAddress; } public String getPersonName() { return personName; } public void setPersonName(String personName) { this.personName = personName; } public String getPersonAddress() { return personAddress; } public void setPersonAddress(String personAddress) { this.personAddress = personAddress; } }
<?xml version="1.0" encoding="utf-8"?> <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" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="com.example.administrator.spinner.Main2Activity"> <LinearLayout android:layout_width="fill_parent" android:layout_height="80dip" android:orientation="vertical" > <Spinner android:id="@+id/spinner2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:spinnerMode="dialog" /> </LinearLayout> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="调教" android:id="@+id/button2" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" /> </RelativeLayout> <!--android:spinnerMode="dialog" 选择spinner的显示样式-->
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Large Text" android:id="@+id/textView1" android:layout_gravity="center_horizontal" android:layout_alignBottom="@+id/image" android:layout_toRightOf="@+id/image" android:layout_toEndOf="@+id/image" android:layout_marginLeft="34dp" android:layout_marginStart="34dp" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/ic_launcher" android:id="@+id/image" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:textAppearance="?android:attr/textAppearanceLarge" android:text="Large Text" android:id="@+id/textView2" android:layout_gravity="center_horizontal" android:layout_alignBottom="@+id/textView1" android:layout_toRightOf="@+id/textView1" android:layout_toEndOf="@+id/textView1" /> </RelativeLayout>
![]()
![]()