- 浏览: 1579254 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (289)
- java 语法基础 (51)
- spring (8)
- mvc struct /Ant --build.xml (8)
- SOA (0)
- oracle 9i/10g (23)
- sql server 2000-2005 (3)
- 数据库基础知识 (6)
- 设计模式与软件架构 (10)
- Hibernate 持久化 (9)
- J2SE/J2EE/J2ME/AJAX 技术 (8)
- JSF 技术 (3)
- JAVA 图形化 (0)
- JMS (40)
- Eclipse 3.2 IDE 开发技巧 (13)
- 项目处理方法集合 (2)
- html/jsp/javascript (2)
- Unix/Linux (9)
- j2me/ARM/windriver/嵌入式 (4)
- 电信科学 (8)
- jsp (1)
- c/c++ (1)
- LZW压缩算法(java) (2)
- Android (77)
- 版本管理git/svn (2)
最新评论
-
huihai:
有demo吗?
NamingStrategy实现动态表名映射 -
cangbaotu:
推荐给大家一些有用的爬虫源码:https://github.c ...
网络爬虫(源代码参考) -
tuspark:
除了.classpath文件以外,.project文件也应该了 ...
Eclipse .classpath文件浅谈 -
tuspark:
造成eclipse自动关闭的原因有很多,这里有很多介绍:ecl ...
eclipse 自动关闭 解决方案 -
DEMONU:
网上都是这些,这种文章。。。
ActiveMQ中的消息持久性
例子效果图 :
实现步骤 :
第一步 :建 立 Android 工程: SpinnerDemo 。
第二步 :编写 Activity 的子类别: SpinnerDemo ,其程序代码如下:
package com.a3gs.spinner;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.*;
public class SpinnerDemo extends Activity {
private TextView myTV;
private Spinner mySp;
private EditText myET;
private Button addBtn, delBtn;
private final String[] items = {" 北京市 ", " 上海市 ", " 天津市 ", " 福州市 "} ;
private ArrayAdapter<String> adapter;
private List<String> allItems;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
myTV = (TextView) findViewById(R.id.myTV);
myET = (EditText) findViewById(R.id.myET);
addBtn = (Button) findViewById(R.id.addBtn);
delBtn = (Button) findViewById(R.id.delBtn);
mySp = (Spinner) findViewById(R.id.mySpinner);
mySp.setVisibility(View.VISIBLE);
allItems = new ArrayList<String>();
for(int i=0; i < items.length; i++){
allItems.add(items[i]);
}
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, allItems);
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
mySp.setAdapter(adapter);
mySp.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO Auto-generated method stub
myTV.setText(" 您选择的是: " + mySp.getSelectedItem().toString());
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
}
});
addBtn.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String ETText = myET.getText().toString();
int len = adapter.getCount();
// 检查所添加的是否已经存在
for(int i = 0; i < len; i++){
if(ETText.equals(adapter.getItem(i))){
return;
}
}
if(!ETText.equals("")){
adapter.add(ETText);
int position = adapter.getPosition(ETText);
mySp.setSelection(position);
myET.setText("");
}
}
});
delBtn.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(mySp.getSelectedItem() != null) {
adapter.remove(mySp.getSelectedItem().toString());
myET.setText("");
}
if(adapter.getCount() == 0){
myET.setText("");
}
}
});
}
}
第三步 :修改 res/layout/main.xml ,其代码如下:
<? 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:id = "@+id/myTV"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:text = "@string/hello"
/>
< EditText
android:id = "@+id/myET"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
/>
< LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:orientation = "horizontal"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
>
< Button
android:id = "@+id/addBtn"
android:layout_width = "160sp"
android:layout_height = "wrap_content"
android:text = "@string/btn_text1"
/>
< Button
android:id = "@+id/delBtn"
android:layout_width = "160sp"
android:layout_height = "wrap_content"
android:text = "@string/btn_text2"
/>
</ LinearLayout >
< Spinner
android:id = "@+id/mySpinner"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
/>
</ LinearLayout >
第四步 :修改 res/layout/spinner_dropdown.xml ,其代码如下:
<? xml version = "1.0" encoding = "utf-8" ?>
< TextView
xmlns:android = "http://schemas.android.com/apk/res/android"
android:id = "@+id/text"
android:layout_width = "wrap_content"
android:layout_height = "25sp"
android:singleLine = "true"
style = "?android:attr/spinnerDropDownItemStyle"
/>
扩展学习
setDropDownViewResource 主要是设置 User 点击 Spinner 后出现的下拉菜单样式,除了前一个范例使用自设方式改变 TextView 内容之外, android 亦提供两种基本的样式:
android.R.layout.simple_spinner_item : TextView 的下拉菜单。
android.R.layout.simple_spinner_dropdown_item :除了有 TextView ,右边有 radio 的下拉菜单。
查看 Android 源代码中的 simple_spinner_drop, , down_item.xml ,内容如下:
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:singleLine="true"
style="?android:attr/spinnerDropDownItemStyle"
/>
以下为自定义修改后,适用于 spinner 的 Layout :
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="fill_parent"
android:layout_height="12sp"
android:singleLine="true"
style="?android:attr/spinnerDropDownItemStyle"
android:textSize="10sp"
/>
发表评论
-
APN(default、mms、supl、dun、hipri接入点类型的区别)
2013-10-10 19:31 45607设置APN上网时,大家可能经常遇到这个问题:为什么有时要填写 ... -
AMR音频编码器概述及文件格式分析
2013-10-10 19:29 3915全称Adaptive Multi-Rate,自适应多速率编码 ... -
pad 强制加载 Hdpi资源 (2.3 dpi < 240)
2012-07-16 16:47 0pad 强制加载 Hdpi资源 (2.3 dpi < ... -
android 设计模式-享元模式
2011-12-16 23:01 2156享元(FlyWeight)模式,原意是“轻量级”模式,它用来解 ... -
statusbar 2.3
2011-11-08 16:04 1245以前我的文章分析过Stat ... -
android 输入法默认设置
2011-07-07 14:00 7150设置默认输入法 在 frameworks\base\co ... -
Android Media Scanner Process
2011-06-06 22:58 3359下面是系统图 Medi ... -
handler与多线程消息处理
2011-06-04 13:42 8245在Android下面也有多线程的概念,在C/C++中,子线程可 ... -
android light
2011-03-24 16:15 3383背光设置是在:设置->声音和显示->亮度,通过进度 ... -
PowerManagerService sensor
2011-03-22 20:06 2638默认分类 2010-12-24 14:34:55 阅读144 ... -
android 单例
2011-02-15 09:26 41911. Framework层的代码: A ... -
Android 开发之 Services 服务
2010-11-02 18:21 4197Service Service ... -
深入学习android之AlarmManager
2010-11-01 16:50 34684对应AlarmManage有一个Alarm ... -
eclipse+android+ddms+adt
2010-09-14 10:30 8394用eclipse + ADT作为android ... -
Menus
2010-09-05 19:01 1760Android Menus 文章分类:移动开发 1.O ... -
Android开机自启动应用开发
2010-08-28 10:07 4558目前需要开发一个开机自启动的GTD应用程序来提醒用户的 ... -
Android2.1_Launcher学习笔记
2010-08-11 13:40 3809文章分类:移动开发 好么,2.0的源码没看几天,2.1的 ... -
Browsing Android Source in Eclipse
2010-08-09 16:00 3391Google’s Android SDK includes ... -
android 编译
2010-08-07 16:31 24931 我的系统是Ubuntu 8.04 * 2 系统上 ... -
Ubuntu linux 右键添加"以管理员身份打开","在终端中打开"
2010-08-02 15:04 4554Ubuntu linux 右键添加"以管理员身份打开 ...
相关推荐
android 动态添加删除的Spinner菜单 ArrayList与Widget的依赖性
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.7 专业相框设计——ImageView的堆栈应用 4.8 自定义下拉菜单模式——Spinner与setDropDownViewResource 4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...
4.9 动态添加/删除的Spinner菜单——ArrayList与Widget的依赖性 4.10 心爱小宝贝相片集——Gallery与衍生BaseAdapter容器 4.11 快速的搜索手机文件引擎——JavaI/O的应用 4.12 按钮也能随点击变换——ImageButton...