本文主要包括以下内容

  1. Spinner的使用
  2. Gallery的使用

Spinner的使用

Spinner的实现过程是

1. 在xml文件中定义Spinner的控件

2. 在activity中获取Spinner控件

3. 定义Spinner下拉列表项数组并将下拉项的内容添加到这个数组中,通过这个数组建立一个下拉列表的适配器

4. 将上3中的适配器配置给获取的Spinner控件

5. 设置下拉列表的显示样式

6. 为获得的Spinner控件添加事件监听

在XML文件中定义

//在主XML中<include android:id="@+id/sp_chose" layout="@layout/spinner_down"/>

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="30dip"
android:orientation="horizontal"
android:background="@drawable/filter_bg"
android:layout_marginTop="5dip"
android:layout_marginLeft="5dip"
android:layout_marginRight="5dip"> <Spinner
android:id="@+id/nearby_distance_spinner"
style="@style/nearby_spinner_style" />
<Spinner
android:id="@+id/nearby_class_spinner"
style="@style/nearby_spinner_style" />
<Spinner
android:id="@+id/nearby_away_spinner"
style="@style/nearby_spinner_style" /> </LinearLayout>

其中背景图片为

nearby_spinner_style为

<style name="nearby_spinner_style">
<item name="android:layout_width">0.0dip</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:background">@null</item>
<item name="android:layout_marginTop">6dip</item>
<item name="android:layout_weight">1.0</item>
</style>

找到Spinner并初始化适配器

private void init() {
// TODO Auto-generated method stub
topText=(TextView) findViewById(R.id.tv_chose_shop);
topText.setText(getIntent().getStringExtra("type"));
disSpi=(Spinner) findViewById(R.id.nearby_distance_spinner);
claSpi=(Spinner) findViewById(R.id.nearby_class_spinner);
awaySpi=(Spinner) findViewById(R.id.nearby_away_spinner); disAdapter=new ArrayAdapter<String>(this, R.layout.nearby_spinner_text, DIS_DATE);
claAdapter=new ArrayAdapter<String>(this, R.layout.nearby_spinner_text, CLASS_DATE);
awayAdapter=new ArrayAdapter<String>(this, R.layout.nearby_spinner_text, AWAY_DATE); }

其中nearby_spinner_text为

<?xml version="1.0" encoding="utf-8"?>

 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
style="?android:attr/spinnerDropDownItemStyle"
android:singleLine="true"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:textColor="#ffffff"
android:textSize="12sp"/>

设置下拉列表的显示样式并且将适配器配置给spinner

//设置列表项显示风格为完全显示
disAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
claAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
awayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); disSpi.setAdapter(disAdapter);
claSpi.setAdapter(claAdapter);
awaySpi.setAdapter(awayAdapter); disSpi.setSelection(2);
claSpi.setSelection(0);
awaySpi.setSelection(0);

设置监听事件

disSpi.setOnItemSelectedListener(new OnItemSelectedListener() {

            @Override
public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// TODO Auto-generated method stub
Toast.makeText(getApplicationContext(), DIS_DATE[position], 0).show();
} @Override
public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub } });

完成,效果如下



最新文章

  1. STM32之看门狗(独立与窗口)
  2. SQLServer注入技巧
  3. C语言实现粒子群算法(PSO)一
  4. RHCA-红帽认证架构师
  5. Xocde4与Xcode3的模板比较
  6. 洛谷 P1033 自由落体 Label:模拟&amp;&amp;非学习区警告
  7. String-原型属性(练习)
  8. sql基本操作
  9. gcc编译器与基本类型3
  10. jquery封装的选项卡
  11. c#后台弹出提示
  12. flask扩展模块flask-sqlachemy 的使用---mysql数据库
  13. SSL和SSH有什么区别
  14. MIP技术进展月报第3期:MIP小姐姐听说,你想改改MIP官网?
  15. MySQL数据库的定时备份
  16. Laravel日常使用总结
  17. 20175212童皓桢 《Java程序设计》第六周学习总结
  18. jquery 中后代遍历之children、find区别
  19. wamp环境搭建(apache安装,mysql安装,php安装)
  20. NSIS笔记

热门文章

  1. C++ STL之stack
  2. EasyUI datagrid 格式化显示数据
  3. 用 xampp 在 windows/Linux 下搭建代理服务器
  4. ios严格检验身份证号码有效性
  5. MySQL中varchar类型在5.0.3后的变化
  6. linux 多线程 LinuxThreads(转)
  7. CMWAP CMWAP是手机上网使用的接入点的名称
  8. Entity Framework Repository模式
  9. 在docker里面安装部署应用
  10. Stanford机器学习---第五讲. 神经网络的学习 Neural Networks learning