日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

AndroidPicker: 安卓選擇器類庫,包括日期時(shí)間選擇器、單項(xiàng)選擇器、地址選擇器、顏色選擇器、文件目錄選擇器、數(shù)字選擇器、星座選擇器等

 流浪的星星318 2017-06-21

安卓選擇器類庫,包括日期選擇器、時(shí)間選擇器、單項(xiàng)選擇器、城市選擇器、顏色選擇器、文件選擇器、目錄選擇器、數(shù)字選擇器、星座選擇器、生肖選擇器等。 歡迎大伙兒在issues提交你的意見或建議

項(xiàng)目分支說明:
Branch_OldAndroidPicker-基于android-wheel的舊版選擇器,不再維護(hù);
release_0.9-WheelPicker、ColorPicker、FilePicker是分開的三個(gè)模塊;
master-默認(rèn)的最新分支,release_0.9之后支持maven庫依賴。

Install

“app”是測試用例;“l(fā)ibrary”包括WheelPicker、ColorPicker、FilePicker,
WheelPicker包括DatePicker、TimePicker、OptionPicker、AddressPicker、NumberPicker等,
如果需要所有的的選擇器的話,建議依賴“AndroidPicker”。

dependencies {
    compile 'cn.qqtheme.framework:AndroidPicker:latest.integration'
    //compile 'cn.qqtheme.framework:WheelPicker:latest.integration'
    //compile 'cn.qqtheme.framework:ColorPicker:latest.integration'
    //compile 'cn.qqtheme.framework:FilePicker:latest.integration'
}

也可以手動下載本項(xiàng)目,復(fù)制“l(fā)ibrary”命名為“AndroidPicker”,然后:

dependencies {
    compile project('AndroidPicker')
}

窗口進(jìn)入退出動畫(可選,默認(rèn)動畫為淡入淡出)

<resources>
    <style name="Animation.CustomPopup" parent="@android:style/Animation">
        <item name="android:windowEnterAnimation">@anim/popup_in</item>
        <item name="android:windowExitAnimation">@anim/popup_out</item>
    </style>
</resources>
picker.setAnimationStyle(R.style.Animation_CustomPopup);

Sample

日期選擇器:

DatePicker picker = new DatePicker(this);
        picker.setRange(1990, 2015);//年份范圍
        picker.setOnDatePickListener(new DatePicker.OnYearMonthDayPickListener() {
            @Override
            public void onDatePicked(String year, String month, String day) {
                showToast(year + "-" + month + "-" + day);
            }
        });
        picker.show();

時(shí)間選擇器:

//默認(rèn)選中當(dāng)前時(shí)間
        TimePicker picker = new TimePicker(this);
        picker.setTopLineVisible(false);
        picker.setOnTimePickListener(new TimePicker.OnTimePickListener() {
            @Override
            public void onTimePicked(String hour, String minute) {
                showToast(hour + ":" + minute);
            }
        });
        picker.show();

單項(xiàng)選擇器(可用于性別、學(xué)歷、職業(yè)、星座等選擇):

OptionPicker picker = new OptionPicker(this, new String[]{
                "第一項(xiàng)", "第二項(xiàng)", "這是一個(gè)很長很長很長很長很長很長很長很長很長的很長很長的很長很長的項(xiàng)"
        });
        picker.setOffset(2);
        picker.setSelectedIndex(1);
        picker.setTextSize(11);
        picker.setOnOptionPickListener(new OptionPicker.OnOptionPickListener() {
            @Override
            public void onOptionPicked(String option) {
                showToast(option);
            }
        });
        picker.show();

數(shù)字選擇器(可用于身高、體重、年齡等選擇):

NumberPicker picker = new NumberPicker(this);
        picker.setOffset(2);//偏移量
        picker.setRange(145, 200);//數(shù)字范圍
        picker.setSelectedItem(172);
        picker.setLabel("厘米");
        picker.setOnOptionPickListener(new OptionPicker.OnOptionPickListener() {
            @Override
            public void onOptionPicked(String option) {
                showToast(option);
            }
        });
        picker.show();

地址選擇器(含省級、地級、縣級):

ArrayList<AddressPicker.Province> data = new ArrayList<AddressPicker.Province>();
        String json = AssetsUtils.readText(this, "city.json");
        data.addAll(JSON.parseArray(json, AddressPicker.Province.class));
        AddressPicker picker = new AddressPicker(this, result);
        picker.setSelectedItem("貴州", "貴陽", "花溪");
        picker.setOnAddressPickListener(new AddressPicker.OnAddressPickListener() {
            @Override
            public void onAddressPicked(String province, String city, String county) {
                showToast(province + city + county);
            }
        });
        picker.show();

地址選擇器(含地級、縣級):

ArrayList<AddressPicker.Province> data = new ArrayList<AddressPicker.Province>();
            String json = AssetsUtils.readText(this, "city2.json");
            data.addAll(JSON.parseArray(json, AddressPicker.Province.class));
            AddressPicker picker = new AddressPicker(this, data);
            picker.setHideProvince(true);
            picker.setOnAddressPickListener(new AddressPicker.OnAddressPickListener() {
                @Override
                public void onAddressPicked(String province, String city, String county) {
                    showToast(province + city + county);
                }
            });
            picker.show();

星座選擇器:

ConstellationPicker picker = new ConstellationPicker(this);
        picker.setTopBackgroundColor(0xFFEEEEEE);
        picker.setTopLineVisible(false);
        picker.setCancelTextColor(0xFF33B5E5);
        picker.setSubmitTextColor(0xFF33B5E5);
        picker.setTextColor(0xFFFF0000, 0xFFCCCCCC);
        picker.setLineColor(0xFFEE0000);
        picker.setSelectedItem("射手");
        picker.setOnOptionPickListener(new OptionPicker.OnOptionPickListener() {
            @Override
            public void onOptionPicked(String option) {
                showToast(option);
            }
        });
        picker.show();

生肖選擇器:

ChineseZodiacPicker picker = new ChineseZodiacPicker(this);
        picker.setLineVisible(false);
        picker.setSelectedItem("羊");
        picker.setOnOptionPickListener(new OptionPicker.OnOptionPickListener() {
            @Override
            public void onOptionPicked(String option) {
                showToast(option);
            }
        });
        picker.show();

顏色選擇器:

ColorPicker picker = new ColorPicker(this);
        picker.setInitColor(0xFFDD00DD);
        picker.setOnColorPickListener(new ColorPicker.OnColorPickListener() {
            @Override
            public void onColorPicked(int pickedColor) {
                showToast(ConvertUtils.toColorString(pickedColor));
            }
        });
        picker.show();

文件選擇器(需要權(quán)限android.permission.READ_EXTERNAL_STORAGE):

FilePicker picker = new FilePicker(this);
        picker.setShowHideDir(false);
        picker.setRootPath(StorageUtils.getRootPath(this) + "Download/");
        //picker.setAllowExtensions(new String[]{".apk"});
        picker.setMode(FilePicker.Mode.File);
        picker.setOnFilePickListener(new FilePicker.OnFilePickListener() {
            @Override
            public void onFilePicked(String currentPath) {
                showToast(currentPath);
            }
        });
        picker.show();

目錄選擇器(需要權(quán)限android.permission.READ_EXTERNAL_STORAGE):

FilePicker picker = new FilePicker(this);
        picker.setMode(FilePicker.Mode.Directory);
        picker.setOnFilePickListener(new FilePicker.OnFilePickListener() {
            @Override
            public void onFilePicked(String currentPath) {
                showToast(currentPath);
            }
        });
        picker.show();

Thanks

庫項(xiàng)目修改了使用以下項(xiàng)目:
https://github.com/wangjiegulu/WheelView
https://github.com/jbruchanov/AndroidColorPicker
示例項(xiàng)目直接使用了以下項(xiàng)目:
https://github.com/alibaba/fastjson

Screenshots

日期選擇器效果圖
時(shí)間選擇器效果圖
單項(xiàng)選擇器效果圖
地址選擇器效果圖
地址選擇器效果圖
數(shù)字選擇器效果圖
星座選擇器效果圖
生肖選擇器效果圖
顏色選擇器效果圖
文件選擇器效果圖
目錄選擇器效果圖

項(xiàng)目地址: https://github.com/gzu-liyujiang/AndroidPicker

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多