100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > android 自定义pickerview Simple PickerView for Android - 这是一个高仿 IOS PickerView 控件的库...

android 自定义pickerview Simple PickerView for Android - 这是一个高仿 IOS PickerView 控件的库...

时间:2018-11-13 18:50:22

相关推荐

android 自定义pickerview Simple PickerView for Android - 这是一个高仿 IOS PickerView 控件的库...

Android-PickerView-Library

该库暂时停止维护,后续可能会进行重构(重构前建议大家不要使用)

预览

使用

首先需要在 build.gradle 文件中添加依赖:

dependencies {

compile 'com.airsaid.library:pickerview:1.0.3'

}

添加好依赖后,重新同步工程。可根据需求使用如下选择器:

城市选择:

CityPickerView mCityPickerView = new CityPickerView(this);

// 设置点击外部是否消失

// mCityPickerView.setCancelable(true);

// 设置滚轮字体大小

// mCityPickerView.setTextSize(18f);

// 设置标题

// mCityPickerView.setTitle("我是标题");

// 设置取消文字

// mCityPickerView.setCancelText("我是取消文字");

// 设置取消文字颜色

// mCityPickerView.setCancelTextColor(Color.GRAY);

// 设置取消文字大小

// mCityPickerView.setCancelTextSize(14f);

// 设置确定文字

// mCityPickerView.setSubmitText("我是确定文字");

// 设置确定文字颜色

// mCityPickerView.setSubmitTextColor(Color.BLACK);

// 设置确定文字大小

// mCityPickerView.setSubmitTextSize(14f);

// 设置头部背景

// mCityPickerView.setHeadBackgroundColor(Color.RED);

mCityPickerView.setOnCitySelectListener(new OnSimpleCitySelectListener(){

@Override

public void onCitySelect(String prov, String city, String area) {

// 省、市、区 分开获取

Log.e(TAG, "省: " + prov + " 市: " + city + " 区: " + area);

}

@Override

public void onCitySelect(String str) {

// 一起获取

Toast.makeText(MainActivity.this, "选择了:" + str, Toast.LENGTH_SHORT).show();

}

});

mCityPickerView.show();

时间选择:

// TimePickerView 同样有上面设置样式的方法

TimePickerView mTimePickerView = new TimePickerView(this, TimePickerView.Type.YEAR_MONTH_DAY);

// 设置是否循环

// mTimePickerView.setCyclic(true);

// 设置滚轮文字大小

// mTimePickerView.setTextSize(TimePickerView.TextSize.SMALL);

// 设置时间可选范围(结合 setTime 方法使用,必须在)

// Calendar calendar = Calendar.getInstance();

// mTimePickerView.setRange(calendar.get(Calendar.YEAR) - 100, calendar.get(Calendar.YEAR));

// 设置选中时间

// mTimePickerView.setTime(new Date());

mTimePickerView.setOnTimeSelectListener(new TimePickerView.OnTimeSelectListener() {

@Override

public void onTimeSelect(Date date) {

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);

Toast.makeText(MainActivity.this, format.format(date), Toast.LENGTH_SHORT).show();

}

});

mTimePickerView.show();

选项选择:

OptionsPickerView mOptionsPickerView = new OptionsPickerView<>(this);

final ArrayList list = new ArrayList<>();

list.add("男");

list.add("女");

// 设置数据

mOptionsPickerView.setPicker(list);

// 设置选项单位

// mOptionsPickerView.setLabels("性");

mOptionsPickerView.setOnOptionsSelectListener(new OptionsPickerView.OnOptionsSelectListener() {

@Override

public void onOptionsSelect(int option1, int option2, int option3) {

String sex = list.get(option1);

Toast.makeText(MainActivity.this, sex, Toast.LENGTH_SHORT).show();

}

});

mOptionsPickerView.show();

更新日志

1.0.2:修复部分城市文字乱码bug,修复设置字体过小后分割线无法对齐bug。

1.0.1:修复内存泄露问题,修复设置setTime()方法后字体设置无效bug。

联系我

感谢

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。