1. 程式人生 > >一個好看的時間控制元件

一個好看的時間控制元件

Android 一個好看的時間控制元件

1.依賴包

compile 'com.wx.wheelview:wheelview:1.3.3'

2.在佈局中使用

 <LinearLayout
                android:layout_width="60dp"
                android:layout_height="60dp"
                android:orientation="vertical">

                <com.wx.wheelview.widget.WheelView
android:id="@+id/addtime_hour_wheelview" android:layout_width="match_parent" android:layout_height="57dp" /> <ImageView //時間下的指示條 android:layout_width="match_parent"
android:layout_height="3dp" android:background="#ff5d5d" /> </LinearLayout>

3.程式碼中的使用

 mAddtimeHourWheelview.setWheelAdapter(new ArrayWheelAdapter(this));
        mAddtimeHourWheelview.setSkin(WheelView.Skin.None
); //無邊框 mAddtimeHourWheelview.setWheelSize(1); //只顯示一行 final ArrayList<String> hours = createHours(); //獲取到小時資料 可以改為分鐘資料 mAddtimeHourWheelview.setWheelData(hours); WheelView.WheelViewStyle style = new WheelView.WheelViewStyle(); //風格 style.selectedTextColor = Color.parseColor("#ff5d5d"); //文字顏色 style.textColor = Color.RED; style.selectedTextSize = 26; //文字大小 mAddtimeHourWheelview.setStyle(style); mAddtimeHourWheelview.setOnWheelItemSelectedListener(new WheelView.OnWheelItemSelectedListener() { //設定監聽 @Override public void onItemSelected(int position, Object o) { String hoursString = hours.get(position); mAddtimeStartTv.setText(hoursString + " : "); //獲取到時間 } }); 資料來源 //小時 private ArrayList<String> createHours() { ArrayList<String> list = new ArrayList<String>(); for (int i = 0; i < 24; i++) { if (i < 10) { list.add("0" + i); } else { list.add("" + i); } } return list; } //分鐘 private ArrayList<String> createMinutes() { ArrayList<String> list = new ArrayList<String>(); for (int i = 0; i < 60; i++) { if (i < 10) { list.add("0" + i); } else { list.add("" + i); } } return list; }