Android学习笔记_72_Spinner的用法
16lz
2021-12-04
一、普通
1、
<?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="match_parent" android:layout_height="wrap_content" android:ellipsize="marquee" android:gravity="left" android:paddingLeft="8dip" android:singleLine="true" android:textSize="12sp" android:textStyle="bold" android:textColor="@color/gsdk_black" android:text="sdf" />
2
private String[] method = null;ArrayAdapter<String> methodAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item, method);
methodSpinner = (Spinner) findViewById(R.id.spinner_recharge_type);moneyAdapter
.setDropDownViewResource(android.R.layout.select_dialog_item);methodSpinner.setAdapter(methodAdapter);
二、自定义spinner:
1、配置文件:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" > <TextView android:id="@+id/tv_spinner_id" android:layout_width="60dp" android:layout_height="80dp" android:visibility="gone" /> <TextView android:id="@+id/tv_spinner_name" style="?android:attr/spinnerDropDownItemStyle" android:layout_width="match_parent" android:layout_height="35dip" android:gravity="center_vertical" android:paddingLeft="10dp" android:textColor="#000" android:textSize="@dimen/font_body" /></LinearLayout>
2、填充数据
List<Map<String, Object>> data = new ArrayList<Map<String, Object>>(); for (Project project : linkedList) { Map<String, Object> map = new HashMap<String, Object>(); map.put("name", project.getName()); map.put("id", project.getId()); data.add(map); } searchAdapter = new SimpleAdapter(PurchaseActivity.this, data, R.layout.purchase_search_spinner, new String[]{"id","name"}, new int[]{R.id.tv_spinner_id,R.id.tv_spinner_name}); searchSpinner.setAdapter(searchAdapter);
3、点击事件:注意点击事件是OnItemSelectedListener而不是OnItemClickListener.
private class SearchSpinnerItemListener implements OnItemSelectedListener{ @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long id) { Spinner spinner = (Spinner) parent; Map<String, Object> projectMap = (Map<String, Object>) spinner.getItemAtPosition(position); int pid = Integer.valueOf(projectMap.get("id")+""); String pname = (String) projectMap.get("name"); Log.i("Purchase","pid: "+pid+" pname: "+pname); } @Override public void onNothingSelected(AdapterView<?> parent) { } }
更多相关文章
- Android(安卓)gallery详解
- android Menu 选项菜单示例
- Android点击效果加边框
- Android(安卓)OneDayOneExample-1.页面互换
- android Gallery 详解
- Android(安卓)不能生成R文件,gen目录为空
- Android(安卓)onClick事件三种实现方法
- Android(安卓)高德地图点击地图获取经纬度
- Android中Preference的使用以及监听事件分析