在软件开发中我们会需要各种选择器,比如设置年龄时需要使用时间选择器。设置地址需要用到地址选择,还有身高等等。
下面介绍一下使用方法:
-
时间选择器的使用:
//这里设置的是选择之后可以回显数据,所以先创建一个SP设置基本数值
String string = getSharedPreferences("tag", MODE_PRIVATE).getString("date", "40#0#0");
String[] split = string.split("#");
String s = split[0];
String s1 = split[1];
String s2 = split[2];
//分割之后得到的并不是具体的时间,而是年,月,日的位置。
int i1 = Integer.parseInt(s);
int i2 = Integer.parseInt(s1);
int i3 = Integer.parseInt(s2);
//这里直接创建 DatePickerDialog,同时把值传递给构造方法
DatePickerDialog.Builder builder=new DatePickerDialog.Builder(this,i1,i2,i3);
//通过builder设置时间
DatePickerDialog dialog=builder.setOnDateSelectedListener(new DatePickerDialog.OnDateSelectedListener() {@Override public void onDateSelected(int[] dates) { Toast.makeText(getApplicationContext(), dates[0] + "#" + dates[1] + "#" + dates[2], Toast.LENGTH_SHORT).show(); } @Override public void setCurrentItem(int positionYear, int positionMonth, int positionDay) { //设置完成时间之后,保存数据。用于下次回显数据。 getSharedPreferences("tag",MODE_PRIVATE).edit().putString("date",positionYear+"#" +positionMonth+"#"+positionDay).commit(); }
}).create();
//最后显示Dialog
dialog.show(); -
设置省市联动的选择器:
RegionPickerDialog.Builder builder = new RegionPickerDialog.Builder(this);
RegionPickerDialog dialog = builder.setOnRegionSelectedListener(new RegionPickerDialog.OnRegionSelectedListener() {@Override public void onRegionSelected(String[] cityAndArea) { Toast.makeText(getApplicationContext(), cityAndArea[0] + "#" + cityAndArea[1], Toast.LENGTH_SHORT).show(); }
}).create();
dialog.show();
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。