当前位置: 代码迷 >> Android >> android实现上拉列表 ListView
  详细解决方案

android实现上拉列表 ListView

热度:70   发布时间:2016-05-01 16:33:34.0
android实现下拉列表 ListView

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(){??
???????????????
[email protected]
???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);
????
???}
[email protected]
???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);??
//??????? }??
//??????? });???
???????
???????
???????
??? }
}

1 楼 GeneralSnow 2011-07-05  
..
  相关解决方案