Android简易实战教程--第四十二话《Spinner下拉级联效果》
2024-10-02 22:26:54
本篇承接第四十话第四十话《Spinner》
参考博客:http://blog.csdn.net/yayun0516
进入正题:
Strings加入第一级数据:
<string-array name="province">
<item >水果</item>
<item >职位</item>
<item >动物</item>
</string-array>
来个布局:
<?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="fill_parent"
android:orientation="vertical" > <LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal" > <Spinner
android:id="@+id/spinner1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/province"/> <Spinner
android:id="@+id/spinner2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout> <TextView
android:text="nihao"
android:id="@+id/text"
android:textColor="#00ff00"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
</TextView> </LinearLayout>
总共两级菜单,一个文本。
主活动代码如下:
package com.ydl.test;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemSelectedListener;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView; public class MainActivity extends Activity {
private Spinner spinner1;
private Spinner spinner2;
private TextView textView;
private String string1;
private String[][] dataStrings = { { "苹果", "香蕉", "梨子", "菠萝", "草莓", },
{ "教师", "工人", "程序员", }, { "老虎", "狮子", "大象", }, };
private ArrayAdapter<CharSequence> adapter = null; public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); // 生命周期方法
super.setContentView(R.layout.activity_main); // 设置要使用的布局管理器
spinner1 = (Spinner) findViewById(R.id.spinner1);
spinner2 = (Spinner) findViewById(R.id.spinner2);
textView = (TextView) findViewById(R.id.text);
spinner1.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
adapter = new ArrayAdapter<CharSequence>(MainActivity.this,
android.R.layout.simple_spinner_item,
dataStrings[position]);//根据position确定第二个spinner中要填充的数据
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//设置点击下拉窗体的显示样式
//给spinner2设置adapter
spinner2.setAdapter(adapter);
//parent指的是 spinner1
string1 = parent.getItemAtPosition(position).toString();// 获取当前显示省份
} public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub }
}); spinner2.setOnItemSelectedListener(new OnItemSelectedListener() { public void onItemSelected(AdapterView<?> parent, View view,
int position, long id) {
//parent指的是 spinner2
String string2 = parent.getItemAtPosition(position).toString();// 获取当前显示省份
textView.setText(string1 +" : "+ string2); } public void onNothingSelected(AdapterView<?> parent) {
// TODO Auto-generated method stub }
}); }
}
运行程序如下:
连通完成~
喜欢的朋友可以关注我哦,不定期更新简单有趣的Android小文~
最新文章
- NOIP2013pj小朋友的数字[DP 最大子段和]
- android 资源ID
- Android-activity-intent
- Careercup - Google面试题 - 5898529851572224
- javaweb学习总结十四(xml约束之Schema)
- PL/SQL客户端安装配置说明
- java合并list
- 字符串的使用(string,StringBuffer,StringBuilder)
- Network view
- PAT (Advanced Level) 1065. A+B and C (64bit) (20)
- raft协议安全性保证
- linux系统下,警告:warning: implicit declaration of function ‘gets’ [-Wimplicit-function-declaration] 和 warning: the `gets&#39; function is dangerous and should not be used. 的由来和解决方法。
- css3写等腰三角形
- c语言----<;项目>;_小游戏<;2048>;
- csv注入漏洞原理&;&;实战
- 自动化测试===uiautomator2类似appium
- Codeforces 1104 D. Game with modulo-交互题-二分-woshizhizhang(Codeforces Round #534 (Div. 2))
- 初识Python、PyCharm、Anaconda与tensorflow
- iOS应用开发最佳实践:编写高质量的Objective-C代码
- bootstrap popover 如何在hover状态移动到弹出上不消失
热门文章
- React 深入系列3:Props 和 State
- OpenGL鼠标拖拽
- [LeetCode] 1-bit and 2-bit Characters 一位和两位字符
- RabbitMQ基础入门
- .NET CORE 2.0之 依赖注入在类中获取IHostingEnvironment,HttpContext
- testng中使用reportng报告
- 系统引导修复 ---- Windows 和 Ubuntu
- [HEOI2015]兔子与樱花
- [BZOJ]1052 覆盖问题(HAOI2007)
- POJ 3171 Cleaning Shifts