Spinner的使用

来源:互联网 发布:linux怎么修改配置文件 编辑:程序博客网 时间:2024/05/22 14:46

Spinner 下拉选择框


布局文件:

[java] view plaincopy
  1. <LinearLayout  
  2.                      android:layout_height="wrap_content"  
  3.                      android:layout_width="match_parent"  
  4.                      android:background="@drawable/no_round_corner"  
  5.                      android:orientation="horizontal">  
  6.   
  7.                  <TextView  
  8.                          android:text="血型"  
  9.                          android:layout_height="wrap_content"  
  10.                          android:layout_width="0dp"  
  11.                          android:gravity="right"  
  12.                          android:paddingRight="10dp"  
  13.                          android:textSize="16sp"  
  14.                          android:paddingTop="10dp"  
  15.                          android:paddingBottom="10dp"  
  16.                          android:layout_weight="1"/>  
  17.   
  18.                  <View  
  19.                          android:background="#ffa8abad"  
  20.                          android:layout_width="1dp"  
  21.                          android:layout_height="match_parent"/>  
  22.   
  23.                  <Spinner  
  24.                          android:id="@+id/bloodtype"  
  25.                          android:layout_height="wrap_content"  
  26.                          android:layout_width="0dp"  
  27.                          android:layout_weight="2"  
  28.                          android:background="@null"  
  29.                          android:gravity="left"/>  
  30.   
  31.              </LinearLayout>  
java文件中

[java] view plaincopy
  1.         //血型下拉框  
  2.         spinner = (Spinner) findViewById(R.id.bloodtype);  
  3.         String[] bloodType = {"A""B""AB""O"};  
  4.         //方式一 布局文件使用系统布局  
  5. //        ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(RegisterDetailActivity.this, android.R.layout.simple_spinner_item, bloodType);  
  6. //        arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//设置Dropdown 布局资源  
  7.         //方式二 自定义布局文件  
  8.         ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(RegisterDetailActivity.this, R.layout.register_detail_spinner_item, bloodType);  
  9.         arrayAdapter.setDropDownViewResource(R.layout.register_detail_spinner_dropdown_item);//设置Dropdown 布局资源  
  10.         //给Spinner设置适配器  
  11.         spinner.setAdapter(arrayAdapter);  
  12.   
  13.         spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {  
  14.             @Override  
  15.             public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {  
  16.              <span style="color:#ff6666">   Spinner spinner1 = (Spinner) adapterView;  
  17.                 String content = (String) spinner1.getItemAtPosition(i);//取得与Spinner关联的列表数据的指定位置的数据</span>  
  18.                 Toast.makeText(RegisterDetailActivity.this"选择了" + content, Toast.LENGTH_LONG).show();  
  19.             }  
  20.   
  21.             @Override  
  22.             public void onNothingSelected(AdapterView<?> adapterView) {  
  23.   
  24.             }  
  25.         });  
  26.         //Spinner 不能使用setOnItemClickListener  
  27. //        spinner.setOnItemClickListener(new AdapterView.OnItemClickListener() {  
  28. //            @Override  
  29. //            public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {  
  30. //                Toast.makeText(RegisterDetailActivity.this, "点击了" + i, Toast.LENGTH_LONG).show();  
  31. //            }  
  32. //        });  

自定义布局资源

register_detail_spinner_dropdown_item.xml

[java] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <TextView xmlns:android="http://schemas.android.com/apk/res/android"  
  4.           android:layout_width="match_parent"  
  5.           android:layout_height="match_parent"  
  6.           android:textSize="16sp"  
  7.           android:paddingTop="10dp"  
  8.           android:paddingBottom="10dp"  
  9.           android:gravity="left"  
  10.           android:paddingLeft="10dp"  
  11.           android:textColor="#ffa8abad"  
  12.           android:background="#aafeFF">  
  13.   
  14. </TextView>  


register_detail_spinner_item.xml

[java] view plaincopy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2.   
  3. <TextView xmlns:android="http://schemas.android.com/apk/res/android"  
  4.           android:layout_width="match_parent"  
  5.           android:layout_height="match_parent"  
  6.           android:textSize="16sp"  
  7.           android:paddingTop="10dp"  
  8.           android:paddingBottom="10dp"  
  9.           android:gravity="left"  
  10.           android:paddingLeft="10dp"  
  11.           android:textColor="#ffa8abad">  
  12.   
  13. </TextView>  


根据Spinner对象取得当前选择的Item内容

[java] view plaincopy
  1. String selectedContent = (String) spinner.getSelectedItem();  
  2. Toast.makeText(RegisterDetailActivity.this"当前选择了" + selectedContent, Toast.LENGTH_LONG).show();  
0 0
原创粉丝点击