一、 前言
Android-PickerView支持时间选择和选项选择这两种选择器
- OptionsPickerView -选项选择器
- TimePickerView -时间选择器
二、示例:
1. 包含一级选择器的选项选择器
OptionsPickerView pvOptions = new OptionsPickerBuilder(AddressAddOrChangeActivity.this, new OnOptionsSelectListener() {
@Override
public void onOptionsSelect(int options1, int options2, int options3, View v) {
// 获取选中项的文本
String address = options1Items.get(options1).getPickerViewText();
}
}).build(); // 生成OptionsPickerView
pvOptions.setPicker(options1Items); // 一级选择器
pvOptions.show(); // 显示
2. 包含三级选择器的选项选择器
OptionsPickerView pvOptions = new OptionsPickerBuilder(AddressAddOrChangeActivity.this, new OnOptionsSelectListener() {
@Override
public void onOptionsSelect(int options1, int options2, int options3, View v) {
//返回的分别是三个级别的选中位置
String address = options1Items.get(options1).getPickerViewText() +
options2Items.get(options1).get(options2) +
options3Items.get(options1).get(options2).get(options3);
}
}).build(); // 生成OptionsPickerView
pvOptions.setPicker(options1Items, options2Items, options3Items);//三级选择器
pvOptions.show();
3. 包含三级选择器的选项选择器,并设置样式属性
OptionsPickerView pvOptions = new OptionsPickerBuilder(AddressAddOrChangeActivity.this, new OnOptionsSelectListener() {
@Override
public void onOptionsSelect(int options1, int options2, int options3, View v) {
//返回的分别是三个级别的选中位置
String address = options1Items.get(options1).getPickerViewText() +
options2Items.get(options1).get(options2) +
options3Items.get(options1).get(options2).get(options3);
mTvAddress.setText(address);
}
}).setSubmitText("确定")//确定按钮文字
.setCancelText("取消")//取消按钮文字
.setTitleText("城市选择")//标题
.setSubCalSize(18)//确定和取消文字大小
.setTitleSize(20)//标题文字大小
.setTitleColor(Color.BLACK)//标题文字颜色
.setSubmitColor(Color.BLUE)//确定按钮文字颜色
.setCancelColor(Color.BLUE)//取消按钮文字颜色
.setTitleBgColor(0xFF333333)//标题背景颜色 Night mode
.setBgColor(0xFF000000)//滚轮背景颜色 Night mode
.setContentTextSize(18)//滚轮文字大小
.setLinkage(false)//设置是否联动,默认true
.setLabels("省", "市", "区")//设置选择的三级单位
.setCyclic(false, false, false)//循环与否
.setSelectOptions(1, 1, 1) //设置默认选中项
.setOutSideCancelable(false)//点击外部dismiss default true
.build();
pvOptions.setPicker(options1Items, options2Items, options3Items);//三级选择器
pvOptions.show();// 显示
options1Items、options2Items、options3Items 数据结构

三、环境
1. gradel 依赖
compile 'com.contrarywind:Android-PickerView:4.1.5'