`
CshBBrain
  • 浏览: 650097 次
  • 性别: Icon_minigender_1
  • 来自: 成都
博客专栏
B7d9bf34-126e-301f-819e-81f2615b5a2a
开源WebSocket服务...
浏览量:144905
Group-logo
HTML5移动开发
浏览量:137851
社区版块
存档分类
最新评论

Android Spinner控件

 
阅读更多

转自:http://android.tgbus.com/Android/tutorial/201105/351259.shtml

 

我们大家都应该知道,android给我们提供了一个spinner控件,这个控件主要就是一个列表,那么我们就来说说这个控件吧,这个控件在以前的也看见过,但今天还是从新介绍一遍吧。Spinner位于 android.widget包下,每次只显示用户选中的元素,当用户再次点击时,会弹出选择列表供用户选择,而选择列表中的元素同样来自适配器。SpinnerView类得一个子类。讲完了这些,我们就给大家来看看是一个这么样的效果。

效果图:

 

字符串资源string.xml

Java代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="hello">Hello World, Activity01!</string>
<string name="app_name">xh_spinner_test</string>
<string name="ys">您的爱好</string>
<string name="lq">篮球</string>
<string name="zp">足球</string>
<string name="pq">排球</string>
</resources>


颜色资源 colors.xml 

Java代码:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="red">#fd8d8d</color>
<color name="green">#9cfda3</color>
<color name="blue">#8d9dfd</color>
<color name="white">#FFFFFF</color>
<color name="black">#000000</color>
</resources>


布局文件 main.xml 

Java代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView 
android:text="@string/ys"
android:id="@+id/TextView01"
android:layout_width="fill_parent" 
android:layout_height="wrap_content" 
android:textSize="28dip"
/>
<Spinner
android:id="@+id/Spinner01"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>


Java代码:
package eoe.sp;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.AdapterView.OnItemSelectedListener;

public class Activity01 extends Activity {
final static int WRAP_CONETNT = -2;// 表示WRAP_CONTENT的常量
// 所有资源的图片(足球、篮球、排球) id的数组
int[] drawableIds = { R.drawable.football, R.drawable.basketball,
R.drawable.volleyball };
// 所有资源字符串 (足球、篮球、排球) id的数组
int[] msgIds = { R.string.zp, R.string.lq, R.string.pq };

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Spinner sp = (Spinner) findViewById(R.id.Spinner01);
BaseAdapter ba = new BaseAdapter() {

public int getCount() {
// 一共三个选项
return 3;
}

public Object getItem(int position) {
return null;
}

public long getItemId(int position) {
return 0;
}

public View getView(int position, View convertView, ViewGroup parent) {
// 动态生成每个下拉项对应的View,每个下拉项View由LinearLayout
// 中包含一个ImageView及一个TextView构成
// 初始化LinearLayout
LinearLayout ll = new LinearLayout(Activity01.this);
ll.setOrientation(LinearLayout.HORIZONTAL);
// 初始化ImageView
ImageView ii = new ImageView(Activity01.this);
ii.setImageDrawable((getResources().getDrawable(drawableIds[position])));
ll.addView(ii);
// 初始化TextView
TextView tv = new TextView(Activity01.this);
tv.setText(" " + getResources().getText(msgIds[position]));
tv.setTextColor(R.color.black);
tv.setTextSize(24);
ll.addView(tv);
return ll;
}
};
// 为Spinner设置内容适配器
sp.setAdapter(ba);
sp.setOnItemSelectedListener(new OnItemSelectedListener() {

public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
// 获取主界面TextView
TextView tv = (TextView) findViewById(R.id.TextView01);
// 获取当前选中选项对应的LinearLayout
LinearLayout ll = (LinearLayout) view;
// 获取其中的TextView
TextView tvn = (TextView) ll.getChildAt(1);
// 用StringBuilder动态生成信息
StringBuilder sb = new StringBuilder();
sb.append(getResources().getText(R.string.ys));
sb.append(":");
sb.append(tvn.getText());
// 信息设置进住界面
tv.setText(sb.toString());
}

public void onNothingSelected(AdapterView<?> parent) {
}
});
}
}

分享到:
评论

相关推荐

    android Spinner控件实例

    以上就是关于Android Spinner控件的基本使用和一些常见的应用场景。通过理解和实践这些知识点,开发者能够熟练地在Android应用中集成和定制Spinner,提高用户体验。在实际开发中,还可以根据具体需求进行更多扩展,...

    Android Spinner 控件的使用

    总结起来,Android Spinner控件是构建交互式用户界面的重要组件,它提供了一种简洁高效的方式供用户选择数据。通过理解其基本用法、自定义适配器和事件监听,开发者可以灵活地满足各种应用场景的需求。在实际项目中...

    Android Spinner控件简单使用方法

    **Android Spinner控件详解** Spinner是Android开发中常用的一种下拉选择控件,它提供了一个可下拉的列表,用户可以从中选择一个项。在设计用户界面时,Spinner经常用于节省屏幕空间,因为它只显示一个选定的条目,...

    Android Spinner控件下拉列表框的实现

    本教程将深入探讨如何在Android应用中实现Spinner控件,以及其相关的核心知识点。 1. **Spinner的基本结构**: Spinner由两部分组成:一个显示当前选中项的文本视图和一个下拉菜单,当用户点击该文本视图时,下拉...

    android Spinner控件的简单运用

    我们大家都应该知道,android给我们提供了一个spinner控件,这个控件主要就是一个列表。 Spinner位于 android.widget包下,每次只显示用户选中的元素,当用户再次点击时,会弹出选择列表供用户选择,而选择列表中的...

    android spinner控件添加,删除使用源代码

    接下来,我们将详细讨论如何在Android应用中添加、删除和使用Spinner控件。 **一、Spinner的添加** 1. **布局文件中的添加**: 在XML布局文件中,使用`&lt;Spinner&gt;`标签来添加Spinner控件。例如: ```xml ...

    Android使用 Spinner控件实现下拉框功能

    Android Spinner控件实现下拉框功能 Android Spinner控件是 Android 系统中的一种控件,用于实现下拉框功能。通过使用 Spinner 控件,我们可以在 Android 应用程序中实现下拉框的效果。下面我们将通过实例代码来...

    android Spinner控件的使用

    通过上述知识点,开发者可以熟练地在Android应用中集成和定制Spinner控件,提升用户交互体验。对于进一步的进阶使用,如结合数据库查询或网络请求加载数据,开发者还可以参考给定的博文链接...

    Android 自定义spinner控件下拉框实现

    然而,原生的Spinner控件在某些场景下可能无法满足开发者的需求,例如样式定制、交互方式等。本篇文章将深入探讨如何通过自定义控件来实现一个具有更多灵活性的Spinner替代方案。 首先,我们创建一个新的布局文件,...

    Spinner控件

    在Android开发中,Spinner控件是一个非常常用的组件,它提供了下拉列表的功能,用户可以通过点击控件来选择一个项,通常用于实现简单的选项选择。Spinner的使用涉及到Android的基础UI设计和数据绑定,其中包含了...

    Android Spinner 高级用法实例演示.rar

    在这个例子中包括了众多Android Spinner 控件的用法,以一个下拉框的效果来展示很多Spinner 的使用技巧,示例中的myspinner_dropdown自定义下拉菜单模式定义在res/layout目录下,代码中演示了将ArrayAdapter添加...

    android spinner 自定义 字体大小

    在Android开发中,Spinner是一个常用的UI组件,它用于在下拉列表中展示多个选项供用户选择。当需要自定义Spinner的字体大小时,开发者需要对Spinner的样式进行一些定制。以下是一些关于如何自定义Android Spinner...

    android spinner

    总之,Android Spinner控件在应用中广泛用于提供有限的用户选择,其灵活性和易用性使得开发者能够方便地创建具有交互性的界面。通过对适配器的使用、选择事件的监听以及样式定制,我们可以创建符合应用需求的Spinner...

    Android使用Spinner控件实现下拉列表的案例

    Android使用Spinner控件实现下拉列表的案例 Android Spinner控件是Android开发中常用的控件之一,主要用来实现下拉列表的功能。今天,我们将通过一个实践案例来了解如何使用Spinner控件实现下拉列表。 一、...

    Android Spinner

    Android Spinner控件是Android开发中常见的一种用户交互组件,它允许用户从一组预先定义的选项中选择一个。在设计简洁的界面或者需要下拉选择功能时,Spinner是必不可少的元素。下面将详细介绍Android Spinner的基本...

    Android中Spinner(下拉框)控件的使用详解

    Android中的Spinner控件是开发移动应用时经常用到的一个组件,它主要用于展示一个下拉列表,用户可以从列表中选择一个项目。Spinner控件通常用于在有限的选项中进行选择,如设置、过滤条件等场景。下面我们将深入...

    Android spinner 案例

    在Android开发中,Spinner是一个非常常用的控件,它通常用于展示下拉选择菜单,用户可以点击后看到一系列可选项,并进行选择。Spinner提供了一种简洁的方式让用户在预定义的选项中进行选择,常用于设置应用的配置...

    Android 控件之下拉框—Spinner控件

    在Android开发中,Spinner控件是一种常见的选择列表控件,它允许用户从下拉菜单中选择一个选项。Spinner类似于一个下拉菜单,适用于有限数量的预定义选项,它提供了简洁的用户界面,节省了屏幕空间。这篇博客文章将...

    android spinner 三级联动

    在"android spinner 三级联动"这个话题中,我们将探讨如何利用Spinner控件来实现全国省市县(区)的三级联动效果。这种效果常见于地址选择、地区筛选等场景,能够帮助用户快速定位到特定的地理位置。 首先,我们...

    Android应用开发-Spinner控件.pptx

    【Android应用开发-Spinner控件】 在Android应用开发中,Spinner控件是一个非常实用的组件,它允许用户从一组预定义的选项中选择一个。Spinner类似于桌面应用程序中的组合框(ComboBox),但它并不具备组合框的下拉...

Global site tag (gtag.js) - Google Analytics