package cn.qqtheme.framework.picker;
import android.app.Activity;
import android.support.annotation.NonNull;
import java.util.ArrayList;
import java.util.List;
import cn.qqtheme.framework.entity.CarNumberProvince;
import cn.qqtheme.framework.entity.CarNumberCity;
/**
* 车牌号码选择器。数据参见http://www.360doc.com/content/12/0602/07/3899427_215339300.shtml
* <br />
* Author:李玉江[QQ:1032694760]
* DateTime:2016/12/18 10:47
* Builder:Android Studio
*/
public class CarNumberPicker extends LinkagePicker<CarNumberProvince, CarNumberCity, Void> {
private static final String[] ABBREVIATIONS = {
"京", "津", "冀", "晋", "蒙", "辽", "吉", "黑", "沪",
"苏", "浙", "皖", "闽", "赣", "鲁", "豫", "鄂", "湘",
"粤", "桂", "琼", "渝", "川", "贵", "云", "藏", "陕",
"甘", "青", "宁", "新"};
public CarNumberPicker(Activity activity) {
super(activity, new CarNumberDataProvider());
}
private static class CarNumberDataProvider implements Provider<CarNumberProvince, CarNumberCity, Void> {
private List<CarNumberProvince> provinces = new ArrayList<>();
CarNumberDataProvider() {
for (String abbreviation : ABBREVIATIONS) {
this.provinces.add(new CarNumberProvince(abbreviation));
}
}
@Override
public boolean isOnlyTwo() {
return true;
}
@Override
@NonNull
public List<CarNumberProvince> initFirstData() {
return provinces;
}
@Override
@NonNull
public List<CarNumberCity> linkageSecondData(int firstIndex) {
return provinces.get(firstIndex).getSeconds();
}
@Override
@NonNull
public List<Void> linkageThirdData(int firstIndex, int secondIndex) {
return new ArrayList<>();
}
}
}