public class ListView extends Activity {
/** Called when the activity is first created. */
private List<String> list = new ArrayList<String>();
private TextView myTextView;
private Spinner mySpinner;
private ArrayAdapter<String> adapter;
private Animation au;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//第一步:添加一个下拉列表项的list,这里添加的项就是下拉列表的菜单项
list.add("北京" );
list.add("上海" );
list.add("深圳" );
list.add("南京" );
list.add("重庆" );
myTextView = (TextView)findViewById(R.id.textview);
mySpinner = (Spinner)findViewById(R.id.Spinner01);
au=AnimationUtils.loadAnimation(this,R.anim.my_anim);
//第二步:为下拉列表定义一个适配器,这里就用到里前面定义的list。
adapter = new ArrayAdapter<String>( this ,android.R.layout.simple_spinner_item, list);
//第三步:为适配器设置下拉列表下拉时的菜单样式。
//simple_spinner_dropdown_item
// adapter.setDropDownViewResource(android.R.layout.);
//第四步:将适配器添加到下拉列表上
mySpinner.setAdapter(adapter);
// mySpinner.draw(new canvaslist());
// mySpinner.setBackgroundDrawable(null);
//第五步:为下拉列表设置各种事件的响应,这个事响应菜单被选中
mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){
@Override
public void onItemSelected(AdapterView<?> arg0, View arg1,
int arg2, long arg3) {
// TODO Auto-generated method stub
/* 将所选mySpinner 的值带入myTextView 中*/
myTextView.setText("您选择的是:" + adapter.getItem(arg2));
/* 将mySpinner 显示*/
arg0.setVisibility(View.VISIBLE);
}
@Override
public void onNothingSelected(AdapterView<?> arg0) {
// TODO Auto-generated method stub
myTextView.setText("NONE" );
arg0.setVisibility(View.VISIBLE);
}
});
/*下拉菜单弹出的内容选项触屏事件处理*/
mySpinner.setOnTouchListener(new Spinner.OnTouchListener(){
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
/* 将mySpinner 隐藏,不隐藏也可以,看自己爱好*/
v.startAnimation(au);
v.setVisibility(View.INVISIBLE);
return false ;
}
});
/*下拉菜单弹出的内容选项焦点改变事件处理*/
// mySpinner.setOnFocusChangeListener(new Spinner.OnFocusChangeListener(){
// public void onFocusChange(View v, boolean hasFocus) {
// // TODO Auto-generated method stub
// v.setVisibility(View.VISIBLE);
// }
// });
}
}
分享到:
相关推荐
android popupWindows ListView 实现下拉列表, 封装好的自定义控件,直接可以复用。
仿照手机微博刷新列表,下拉listview松手后刷新数据
适合基础巩固学习 解析服务器json数据 ListView列表上拉加载 下拉刷新 自己做的程序 解释很全 经过验证 绝对运行成功 学习的好例子 希望对您有绝对的好帮助
安卓自定义下拉列表popwindow实现下拉+listview,不加动画很好的下拉格式,网上资料综合的例子,项目中用到了,可以自定义下拉的背景,等等一系列的扩展,感觉不错传上供分享,帮到有用的给个赞,没用的就算了...
android Listview下拉刷新 上拉(滑动分页)加载更多 高仿新浪微博下拉刷新,同时实现了滑动加载下一页
android listview 下拉刷新 上拉翻页 仿新浪微博客户端 完美的demo
在Android开发中经常会需要用的列表,用ListView实现分页显示,下拉自动刷新功能。完整工程源码,已测试通过,方便初学者。
Android系统中实现 Listview实现三级菜单列表
android仿苹果ListView的实现 下拉刷新..
由此可以看出,在构建这个下拉刷新的组件的时候,只用继承ListView,然后重写onTouchEvent就能实现。还有就是要能在xml布局文件中引用,还需要一个参数为Context,AttributeSet的构造函数。 表面上的功能大概就这些...
android Listview下拉刷新列表,类似于新浪微博等常见软件中实现的功能
仿造QQ的好友下拉列表的一个demo 很适合初学者进行自我学习
本代码仿天猫ANDROID客户端,精品页面的列表界面,为了提高开发效率,本代码使用了Afinal框架,用于加载网络图片,为了节省时间,使用了普通的LISTVIEW实现,后续大家可用支持下拉刷新,上拉更多的列表组件替代。...
android 下拉刷新Listview 源码
Android项目仿iphone的listview下拉更新.rar
android实现的学科竞赛管理系统包括自动登陆、页面跳转、listview列表信息、上拉加载和下拉刷新、json数据解析等。适合学习使用。
类似于qq好友列表的 Android listView下拉刷新效果demo
提供下拉分页刷新列表 case MotionEvent.ACTION_UP: if (!isVerticalScrollBarEnabled()) { setVerticalScrollBarEnabled(true); } if (getFirstVisiblePosition() == 0 && mRefreshState != REFRESHING) { /...
一个顺滑又漂亮的Android下拉刷新与加载更多列表组件。 根据系统自带ListView源码改造而来: 增加下拉刷新及滚动到底部自动加载的功能; 增加越界回弹效果; 增加自定义列表项动画的功能; 与其他下拉刷新列表...