Я хотел бы использовать собственный скин для своих Datepickers и Timepickers. Изменение фона в XML не помогает (он меняет фон на набор, а не на каждую из его кнопок). API мучительно короткий и ничего не говорит о внешнем виде ( http://developer.android.com/reference/android/widget/DatePicker.html ). Можно ли использовать собственный скин для кнопок Datepickers и Timepickers?
Как вы используете пользовательские скины Datepicker и Timepicker?
Ответы (3)
хорошо, вы ищете пользовательскую тему для средства выбора даты и времени.. Это позволит вам изменить тему кнопок..
https://github.com/luminousman/DatePicker
и в стиле ICS
https://github.com/luminousman/android-datepicker
Надеюсь, что это поможет вам....
person
Bhavesh Hirpara
schedule
07.01.2012
К сожалению, числовой набор — это внутренний виджет. Нужно переопределить эти фоны. И нет официального способа сделать это.
<NumberPickerButton android:id="@+id/increment"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/timepicker_up_btn" />
<EditText android:id="@+id/timepicker_input"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:singleLine="true"
style="?android:attr/textAppearanceLargeInverse"
android:textColor="@android:color/primary_text_light"
android:textSize="30sp"
android:background="@drawable/timepicker_input" />
<NumberPickerButton android:id="@+id/decrement"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/timepicker_down_btn" />
person
biorbnA
schedule
08.10.2010
Это небезопасно, но я считаю, что это единственный способ скрыть таймпикер без копирования всего класса:
try { for (int i=0; i<2; i++)
{
((ViewGroup) ((ViewGroup) mTimePicker.getChildAt(0)).getChildAt(i)).getChildAt(0).setBackgroundResource(R.drawable.timepicker_up_btn);
((ViewGroup) ((ViewGroup) mTimePicker.getChildAt(0)).getChildAt(i)).getChildAt(1).setBackgroundResource(R.drawable.timepicker_input);
((ViewGroup) ((ViewGroup) mTimePicker.getChildAt(0)).getChildAt(i)).getChildAt(2).setBackgroundResource(R.drawable.timepicker_down_btn);
}
} catch (Throwable t) {/* obviously no the view may look like garbage */}
очевидно, вы должны предоставить указанные чертежи с вашим приложением
person
bernstein
schedule
16.05.2011