Advertisement
aldakur

TimePickerTextColor

May 20th, 2015
275
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.95 KB | None | 0 0
  1. import java.lang.reflect.Field;
  2. import android.widget.EditText;
  3. import android.content.res.Resources;
  4. import android.graphics.Color;
  5. import android.graphics.Paint;
  6.  
  7.  
  8. TimePicker time_picker; //Instantiated in onCreate()
  9. Resources system;
  10.  
  11. private void set_timepicker_text_colour(){
  12.     system = Resources.getSystem();
  13.     int hour_numberpicker_id = system.getIdentifier("hour", "id", "android");
  14.     int minute_numberpicker_id = system.getIdentifier("minute", "id", "android");
  15.     int ampm_numberpicker_id = system.getIdentifier("amPm", "id", "android");
  16.  
  17.     NumberPicker hour_numberpicker = (NumberPicker) time_picker.findViewById(hour_numberpicker_id);
  18.     NumberPicker minute_numberpicker = (NumberPicker) time_picker.findViewById(minute_numberpicker_id);
  19.     NumberPicker ampm_numberpicker = (NumberPicker) time_picker.findViewById(ampm_numberpicker_id);
  20.  
  21.     set_numberpicker_text_colour(hour_numberpicker);
  22.     set_numberpicker_text_colour(minute_numberpicker);
  23.     set_numberpicker_text_colour(ampm_numberpicker);
  24. }
  25.  
  26. private void set_numberpicker_text_colour(NumberPicker number_picker){
  27.     final int count = number_picker.getChildCount();
  28.     final int color = getResources().getColor(R.color.text);
  29.  
  30.     for(int i = 0; i < count; i++){
  31.         View child = number_picker.getChildAt(i);
  32.  
  33.         try{
  34.             Field wheelpaint_field = number_picker.getClass().getDeclaredField("mSelectorWheelPaint");
  35.             wheelpaint_field.setAccessible(true);
  36.  
  37.             ((Paint)wheelpaint_field.get(number_picker)).setColor(color);
  38.             ((EditText)child).setTextColor(color);
  39.             number_picker.invalidate();
  40.         }
  41.         catch(NoSuchFieldException e){
  42.             Log.w("setNumberPickerTextColor", e);
  43.         }
  44.         catch(IllegalAccessException e){
  45.             Log.w("setNumberPickerTextColor", e);
  46.         }
  47.         catch(IllegalArgumentException e){
  48.             Log.w("setNumberPickerTextColor", e);
  49.         }
  50.     }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement