android.widget.NumberPicker.OnValueChangeListener#android.widget.NumberPicker源码实例Demo

下面列出了android.widget.NumberPicker.OnValueChangeListener#android.widget.NumberPicker 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: TLint   文件: MaterialNumberPicker.java
/**
 * Init number picker by disabling focusability of edit text embedded inside the number picker
 * We also override the edit text filter private attribute by using reflection as the formatter
 * is
 * still buggy while attempting to display the default value
 * This is still an open Google @see <a href="https://code.google.com/p/android/issues/detail?id=35482#c9">issue</a>
 * from 2012
 */
private void initView() {
    setMinValue(MIN_VALUE);
    setMaxValue(MAX_VALUE);
    setValue(DEFAULT_VALUE);
    setBackgroundColor(BACKGROUND_COLOR);
    setSeparatorColor(SEPARATOR_COLOR);
    setTextColor(TEXT_COLOR);
    setTextSize(TEXT_SIZE);
    setWrapSelectorWheel(false);
    setFocusability(false);

    try {
        Field f = NumberPicker.class.getDeclaredField("mInputText");
        f.setAccessible(true);
        EditText inputText = (EditText) f.get(this);
        inputText.setFilters(new InputFilter[0]);
    } catch (NoSuchFieldException | IllegalAccessException | IllegalArgumentException e) {
        e.printStackTrace();
    }
}
 
源代码2 项目: Android-Webcam   文件: FormatPickerDialog.java
@Override
public void onStart() {
    super.onStart();
    setCancelable(false);

    numberPicker = (NumberPicker) getDialog().findViewById(R.id.number_picker);
    numberPicker.setDescendantFocusability(NumberPicker.FOCUS_BLOCK_DESCENDANTS);
    numberPicker.setDisplayedValues(values);
    numberPicker.setMinValue(getMinimumValue());
    numberPicker.setMaxValue(getMaximumValue());
    numberPicker.setValue(getInitialValue());
    numberPicker.setWrapSelectorWheel(false);
    numberPicker.setOnValueChangedListener(new OnValueChangeListener() {
        @Override public void onValueChange(NumberPicker picker, int oldVal, int newVal) {
            currentIndex = newVal;
        }
    });
}
 
源代码3 项目: arcusandroid   文件: TimezonePickerPopup.java
@Override public void doContentSection() {
    timezones = getTimezones();
    picker = (NumberPicker) contentView.findViewById(R.id.floating_day_number_picker);
    picker.setVisibility(View.GONE);
    picker.setDescendantFocusability(NumberPicker.FOCUS_BLOCK_DESCENDANTS);
    picker.setMinValue(0);

    String[] displayedValues = new String[timezones.size()];
    for (int i = 0; i < timezones.size(); i++) {
        displayedValues[i] = timezones.get(i).getName();
    }

    picker.setMaxValue(displayedValues.length - 1);
    picker.setDisplayedValues(displayedValues);
    picker.setValue(getIndexOfCurrentZoneOrDefault(0));
    picker.setVisibility(View.VISIBLE);

    Bundle args = getArguments();
    if (args == null) {
        forceNotification = false;
    } else {
        forceNotification = args.getBoolean(FORCE_NOTIFICATION, false);
    }
}
 
源代码4 项目: chronosnap   文件: TimeIntervalPreference.java
/**
 * Perform initialization of the view items
 */
@Override
protected void onBindDialogView(View view) {
    super.onBindDialogView(view);

    // Obtain the current value
    long currentValue = Long.valueOf(getPersistedString(
            getContext().getString(R.string.pref_interval_default)));
    Interval interval = getInterval(currentValue);

    // Obtain references to the pickers and initialize them with the correct value
    mHourPicker = (NumberPicker) view.findViewById(R.id.hourPicker);
    mHourPicker.setMinValue(0);
    mHourPicker.setMaxValue(23);
    mHourPicker.setValue(interval.mHours);

    mMinutePicker = (NumberPicker) view.findViewById(R.id.minutePicker);
    mMinutePicker.setMinValue(0);
    mMinutePicker.setMaxValue(59);
    mMinutePicker.setValue(interval.mMinutes);

    mSecondPicker = (NumberPicker) view.findViewById(R.id.secondPicker);
    mSecondPicker.setMinValue(0);
    mSecondPicker.setMaxValue(59);
    mSecondPicker.setValue(interval.mSeconds);
}
 
源代码5 项目: a   文件: NumberPickerPreference.java
/**
 * @return dialog view with picker inside
 */
@Override
protected View onCreateDialogView() {
    FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
    layoutParams.gravity = Gravity.CENTER;

    numPicker = new NumberPicker(getContext());
    numPicker.setLayoutParams(layoutParams);
    numPicker.setMinValue(minValue);
    numPicker.setMaxValue(maxValue);

    FrameLayout dialogView = new FrameLayout(getContext());
    dialogView.addView(numPicker);

    return dialogView;
}
 
源代码6 项目: MyBookshelf   文件: NumberPickerPreference.java
/**
 * @return dialog view with picker inside
 */
@Override
protected View onCreateDialogView() {
    FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
    layoutParams.gravity = Gravity.CENTER;

    numPicker = new NumberPicker(getContext());
    numPicker.setLayoutParams(layoutParams);
    numPicker.setMinValue(minValue);
    numPicker.setMaxValue(maxValue);

    FrameLayout dialogView = new FrameLayout(getContext());
    dialogView.addView(numPicker);

    return dialogView;
}
 
源代码7 项目: HaoReader   文件: NumberPickerPreference.java
/**
 * @return dialog view with picker inside
 */
@Override
protected View onCreateDialogView() {
    FrameLayout.LayoutParams layoutParams = new FrameLayout.LayoutParams(
            ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
    layoutParams.gravity = Gravity.CENTER;

    numPicker = new NumberPicker(getContext());
    numPicker.setLayoutParams(layoutParams);
    numPicker.setMinValue(minValue);
    numPicker.setMaxValue(maxValue);

    FrameLayout dialogView = new FrameLayout(getContext());
    dialogView.addView(numPicker);

    return dialogView;
}
 
@OnClick(R.id.button_set_tile_size)
void onTileSizeClicked() {
    final NumberPicker view = new NumberPicker(this);
    view.setMinValue(24);
    view.setMaxValue(64);
    view.setWrapSelectorWheel(false);
    view.setValue(currentTileSize);
    new AlertDialog.Builder(this)
            .setView(view)
            .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
                @Override
                public void onClick(@NonNull DialogInterface dialog, int which) {
                    currentTileSize = view.getValue();
                    widget.setTileSizeDp(currentTileSize);
                }
            })
            .show();
}
 
@OnClick(R.id.custom_tile_height_size)
public void onHeightClick() {
  final NumberPicker view = new NumberPicker(this);
  view.setMinValue(24);
  view.setMaxValue(64);
  view.setWrapSelectorWheel(false);
  view.setValue(currentTileHeight);
  new AlertDialog.Builder(this)
      .setView(view)
      .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
        @Override
        public void onClick(@NonNull DialogInterface dialog, int which) {
          currentTileHeight = view.getValue();
          widget.setTileHeightDp(currentTileHeight);
        }
      })
      .show();
}
 
源代码10 项目: SlideDayTimePicker   文件: DayFragment.java
/**
 * Enable or disable NumberPicker editing. We use this to turn
 * off editing and this has the effect of removing the blinking
 * cursor that is shown by default.
 */
private void enableNumberPickerEditing(NumberPicker numberPicker, boolean enable)
{
    int childCount = numberPicker.getChildCount();

    for (int i = 0; i < childCount; i++)
    {
        View childView = numberPicker.getChildAt(i);

        if (childView instanceof EditText)
        {
            EditText editText = (EditText) childView;
            editText.setFocusable(enable);
            return;
        }
    }
}
 
源代码11 项目: NightWatch   文件: SnoozeActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    alertStatus = (TextView) findViewById(R.id.alert_status);
    snoozeValue = (NumberPicker) findViewById(R.id.snooze);

    prefs =  PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
    doMgdl = (prefs.getString("units", "mgdl").compareTo("mgdl") == 0);

    addListenerOnButton();
    if(BgGraphBuilder.isXLargeTablet(getApplicationContext())) {
        alertStatus.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
        buttonSnooze.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
    }

    displayStatus();
}
 
源代码12 项目: NightWatch   文件: SnoozeActivity.java
static void SetSnoozePickerValues(NumberPicker picker, boolean above, int default_snooze) {
    String[] values=new String[snoozeValues.length];
    for(int i=0;i<values.length;i++){
        values[i]=getNameFromTime(snoozeValues[i]);
    }

    picker.setMaxValue(values.length -1);
    picker.setMinValue(0);
    picker.setDisplayedValues(values);
    picker.setWrapSelectorWheel(false);
    if(default_snooze != 0) {
        picker.setValue(getSnoozeLocatoin(default_snooze));
    } else {
        picker.setValue(getSnoozeLocatoin(getDefaultSnooze(above)));
    }
}
 
源代码13 项目: wallpaperboard   文件: RefreshDurationFragment.java
private void setDividerColor (NumberPicker picker) {
    java.lang.reflect.Field[] pickerFields = NumberPicker.class.getDeclaredFields();
    for (java.lang.reflect.Field pf : pickerFields) {
        if (pf.getName().equals("mSelectionDivider")) {
            pf.setAccessible(true);
            try {
                int color = ColorHelper.getAttributeColor(getActivity(), R.attr.colorAccent);
                pf.set(picker, DrawableHelper.getTintedDrawable(
                        getActivity(), R.drawable.numberpicker_divider, color));
            } catch (Exception e) {
                LogUtil.e(Log.getStackTraceString(e));
            }
            break;
        }
    }
}
 
@Override
protected void onPrepareDialogBuilder(final Builder builder) {
    super.onPrepareDialogBuilder(builder);

    numberPicker = new NumberPicker(this.getContext());
    numberPicker.setMinValue(minValue);
    numberPicker.setMaxValue(maxValue);
    numberPicker.setValue(selectedValue);
    numberPicker.setWrapSelectorWheel(wrapSelectorWheel);
    numberPicker.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));

    final LinearLayout linearLayout = new LinearLayout(this.getContext());
    linearLayout.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
    linearLayout.setGravity(Gravity.CENTER);
    linearLayout.addView(numberPicker);

    builder.setView(linearLayout);
}
 
源代码15 项目: Aegis   文件: Dialogs.java
public static void showBackupVersionsPickerDialog(Activity activity, NumberInputListener listener) {
    final int max = 30;
    String[] numbers = new String[max / 5];
    for (int i = 0; i < numbers.length; i++) {
        numbers[i] = Integer.toString(i * 5 + 5);
    }

    View view = activity.getLayoutInflater().inflate(R.layout.dialog_number_picker, null);
    NumberPicker numberPicker = view.findViewById(R.id.numberPicker);
    numberPicker.setDisplayedValues(numbers);
    numberPicker.setMaxValue(numbers.length - 1);
    numberPicker.setMinValue(0);
    numberPicker.setValue(new Preferences(activity.getApplicationContext()).getBackupsVersionCount() / 5 - 1);
    numberPicker.setWrapSelectorWheel(false);

    AlertDialog dialog = new AlertDialog.Builder(activity)
            .setTitle(R.string.set_number)
            .setView(view)
            .setPositiveButton(android.R.string.ok, (dialog1, which) ->
                    listener.onNumberInputResult(numberPicker.getValue()))
            .create();

    showSecureDialog(dialog);
}
 
源代码16 项目: SuntimesWidget   文件: AlarmOffsetDialog.java
protected void initViews( final Context context, View dialogContent )
{
    pickerDirection = (NumberPicker) dialogContent.findViewById(R.id.alarmOption_offset_direction);
    pickerDirection.setMinValue(0);
    pickerDirection.setMaxValue(1);
    pickerDirection.setDisplayedValues( new String[] {context.getString(R.string.offset_button_before), context.getString(R.string.offset_button_after)} );
    pickerDirection.setOnValueChangedListener(onOffsetChanged);

    pickerOffsetMinutes = (NumberPicker) dialogContent.findViewById(R.id.alarmOption_offset_minute);
    pickerOffsetMinutes.setMinValue(0);
    pickerOffsetMinutes.setMaxValue(minuteStrings.length-1);
    pickerOffsetMinutes.setDisplayedValues(minuteStrings);
    pickerOffsetMinutes.setOnValueChangedListener(onOffsetChanged);

    pickerOffsetHours = (NumberPicker) dialogContent.findViewById(R.id.alarmOption_offset_hour);
    pickerOffsetHours.setMinValue(0);
    pickerOffsetHours.setMaxValue(hourStrings.length-1);
    pickerOffsetHours.setDisplayedValues(hourStrings);
    pickerOffsetHours.setOnValueChangedListener(onOffsetChanged);

    pickerOffsetDays = (NumberPicker) dialogContent.findViewById(R.id.alarmOption_offset_day);
    pickerOffsetDays.setMinValue(0);
    pickerOffsetDays.setMaxValue(dayStrings.length-1);
    pickerOffsetDays.setDisplayedValues(dayStrings);
    pickerOffsetDays.setOnValueChangedListener(onOffsetChanged);
}
 
源代码17 项目: xDrip   文件: SnoozeActivity.java
static void SetSnoozePickerValues(NumberPicker picker, boolean above, int default_snooze) {
    String[] values=new String[snoozeValues.length];
    for(int i=0;i<values.length;i++){
        values[i]=getNameFromTime(snoozeValues[i]);
    }

    picker.setMaxValue(values.length -1);
    picker.setMinValue(0);
    picker.setDisplayedValues(values);
    picker.setWrapSelectorWheel(false);
    if(default_snooze != 0) {
        picker.setValue(getSnoozeLocatoin(default_snooze));
    } else {
        picker.setValue(getSnoozeLocatoin(getDefaultSnooze(above)));
    }
}
 
源代码18 项目: xDrip   文件: SnoozeActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //KS if (Home.get_holo()) { setTheme(R.style.OldAppTheme); }
    setContentView(R.layout.activity_snooze);
    alertStatus = (TextView) findViewById(R.id.alert_status);
    snoozeValue = (NumberPicker) findViewById(R.id.snooze);

    prefs =  PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
    doMgdl = (prefs.getString("units", "mgdl").compareTo("mgdl") == 0);

    addListenerOnButton();
    if(BgGraphBuilder.isXLargeTablet(getApplicationContext())) {
        alertStatus.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
        buttonSnooze.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
    }
    displayStatus();
}
 
源代码19 项目: xDrip   文件: SnoozeActivity.java
static void SetSnoozePickerValues(NumberPicker picker, boolean above, int default_snooze) {
    String[] values=new String[snoozeValues.length];
    for(int i=0;i<values.length;i++){
        values[i]=getNameFromTime(snoozeValues[i]);
    }

    picker.setMaxValue(values.length -1);
    picker.setMinValue(0);
    picker.setDisplayedValues(values);
    picker.setWrapSelectorWheel(false);
    if(default_snooze != 0) {
        picker.setValue(getSnoozeLocatoin(default_snooze));
    } else {
        picker.setValue(getSnoozeLocatoin(getDefaultSnooze(above)));
    }
}
 
源代码20 项目: xDrip   文件: SnoozeActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    if (Home.get_holo()) { setTheme(R.style.OldAppThemeNoTitleBar); }
    JoH.fixActionBar(this);
    setContentView(R.layout.activity_snooze);
    alertStatus = (TextView) findViewById(R.id.alert_status);
    snoozeValue = (NumberPicker) findViewById(R.id.snooze);

    prefs =  PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
    doMgdl = (prefs.getString("units", "mgdl").compareTo("mgdl") == 0);

    addListenerOnButton();
    if(BgGraphBuilder.isXLargeTablet(getApplicationContext())) {
        alertStatus.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
        buttonSnooze.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
    }
    displayStatus();
}
 
源代码21 项目: xDrip-plus   文件: SnoozeActivity.java
static void SetSnoozePickerValues(NumberPicker picker, boolean above, int default_snooze) {
    String[] values=new String[snoozeValues.length];
    for(int i=0;i<values.length;i++){
        values[i]=getNameFromTime(snoozeValues[i]);
    }

    picker.setMaxValue(values.length -1);
    picker.setMinValue(0);
    picker.setDisplayedValues(values);
    picker.setWrapSelectorWheel(false);
    if(default_snooze != 0) {
        picker.setValue(getSnoozeLocatoin(default_snooze));
    } else {
        picker.setValue(getSnoozeLocatoin(getDefaultSnooze(above)));
    }
}
 
@OnClick(R.id.custom_tile_width_size)
public void onWidthClick() {
  final NumberPicker view = new NumberPicker(this);
  view.setMinValue(24);
  view.setMaxValue(64);
  view.setWrapSelectorWheel(false);
  view.setValue(currentTileWidth);
  new AlertDialog.Builder(this)
      .setView(view)
      .setPositiveButton(android.R.string.ok, new DialogInterface.OnClickListener() {
        @Override
        public void onClick(@NonNull DialogInterface dialog, int which) {
          currentTileWidth = view.getValue();
          widget.setTileWidthDp(currentTileWidth);
        }
      })
      .show();
}
 
源代码23 项目: xDrip-plus   文件: SnoozeActivity.java
static void SetSnoozePickerValues(NumberPicker picker, boolean above, int default_snooze) {
    String[] values=new String[snoozeValues.length];
    for(int i=0;i<values.length;i++){
        values[i]=getNameFromTime(snoozeValues[i]);
    }

    picker.setMaxValue(values.length -1);
    picker.setMinValue(0);
    picker.setDisplayedValues(values);
    picker.setWrapSelectorWheel(false);
    if(default_snooze != 0) {
        picker.setValue(getSnoozeLocatoin(default_snooze));
    } else {
        picker.setValue(getSnoozeLocatoin(getDefaultSnooze(above)));
    }
}
 
源代码24 项目: TLint   文件: MaterialNumberPicker.java
/**
 * Uses reflection to access divider private attribute and override its color
 * Use Color.Transparent if you wish to hide them
 */
public void setSeparatorColor(int separatorColor) {
    mSeparatorColor = separatorColor;

    Field[] pickerFields = NumberPicker.class.getDeclaredFields();
    for (Field pf : pickerFields) {
        if (pf.getName().equals("mSelectionDivider")) {
            pf.setAccessible(true);
            try {
                pf.set(this, new ColorDrawable(separatorColor));
            } catch (IllegalAccessException | IllegalArgumentException e) {
                e.printStackTrace();
            }
            break;
        }
    }
}
 
源代码25 项目: NightWatch   文件: SnoozeActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    alertStatus = (TextView) findViewById(R.id.alert_status);
    snoozeValue = (NumberPicker) findViewById(R.id.snooze);

    prefs =  PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
    doMgdl = (prefs.getString("units", "mgdl").compareTo("mgdl") == 0);

    addListenerOnButton();
    if(BgGraphBuilder.isXLargeTablet(getApplicationContext())) {
        alertStatus.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
        buttonSnooze.setTextSize(TypedValue.COMPLEX_UNIT_SP, 30);
    }

    displayStatus();
}
 
源代码26 项目: Mizuu   文件: EditMovieFragment.java
private void showRuntimeDialog(int initialValue) {
    final View numberPickerLayout = getActivity().getLayoutInflater().inflate(R.layout.number_picker_dialog, null, false);
    final NumberPicker numberPicker = (NumberPicker) numberPickerLayout.findViewById(R.id.number_picker);
    numberPicker.setMaxValue(600);
    numberPicker.setMinValue(0);
    numberPicker.setValue(initialValue);

    AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
    builder.setTitle(R.string.set_runtime);
    builder.setView(numberPickerLayout);
    builder.setNeutralButton(R.string.set, new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // Update the runtime
            mMovie.setRuntime(numberPicker.getValue());

            // Update the UI with the new value
            setupValues(false);

            // Dismiss the dialog
            dialog.cancel();
        }
    });
    builder.show();
}
 
@SuppressLint("RestrictedApi")
public NumberPickerPreference(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
    super(context, attrs, defStyleAttr, defStyleRes);

    mNumberPicker = new NumberPicker(context);

    TypedArray a;
    a = context.obtainStyledAttributes(attrs, R.styleable.NumberPickerPreference);
    mNumberPicker.setMinValue(a.getInt(R.styleable.NumberPickerPreference_min, 0));
    mNumberPicker.setMaxValue(a.getInt(R.styleable.NumberPickerPreference_max, 100));

    a = context.obtainStyledAttributes(attrs,
            R.styleable.Preference, defStyleAttr, defStyleRes);

    mSummary = TypedArrayUtils.getString(a, R.styleable.Preference_summary,
            R.styleable.Preference_android_summary);

    a.recycle();
}
 
/**
 * Init number picker by disabling focusability of edit text embedded inside the number picker
 * We also override the edit text filter private attribute by using reflection as the formatter is still buggy while attempting to display the default value
 * This is still an open Google @see <a href="https://code.google.com/p/android/issues/detail?id=35482#c9">issue</a> from 2012
 */
private void initView() {
    setMinValue(MIN_VALUE);
    setMaxValue(MAX_VALUE);
    setValue(DEFAULT_VALUE);
    setBackgroundColor(BACKGROUND_COLOR);
    setSeparatorColor(SEPARATOR_COLOR);
    setTextColor(TEXT_COLOR);
    setTextSize(TEXT_SIZE);
    setWrapSelectorWheel(false);
    setFocusability(false);

    try {
        Field f = NumberPicker.class.getDeclaredField("mInputText");
        f.setAccessible(true);
        EditText inputText = (EditText)f.get(this);
        inputText.setFilters(new InputFilter[0]);
    } catch (NoSuchFieldException | IllegalAccessException | IllegalArgumentException e) {
        e.printStackTrace();
    }
}
 
源代码29 项目: arcusandroid   文件: OddDaysPopup.java
@Override
public void doContentSection() {
    Calendar current = Calendar.getInstance();
    String[] days = new String[7];
    int j=0;
    int i=0;
    do {
        if ( (current.get(Calendar.DAY_OF_MONTH) & 1) == 0 ) {
            i++;
        } else {
            if (i > 1) {
                days[j] = headerDateFormat.format(current.getTime());
            }
            else {
                days[j] = i == 0 ? getString(R.string.today) : getString(R.string.tomorrow);
            }
            j++;
            i++;
        }
        current.add(Calendar.DAY_OF_MONTH, 1);
    } while(i<14);

    picker = (NumberPicker) contentView.findViewById(R.id.floating_day_number_picker);
    picker.setDescendantFocusability(NumberPicker.FOCUS_BLOCK_DESCENDANTS);
    picker.setMinValue(0);
    picker.setMaxValue(6);
    picker.setDisplayedValues(days);
}
 
@Override
public void doContentSection() {
    String deviceAddress = getArguments().getString(MODEL_ADDR, "");

    ModelSource<DeviceModel> m = DeviceModelProvider.instance().getModel(deviceAddress);
    m.addModelListener(Listeners.runOnUiThread(new Listener<ModelEvent>() {
        public void onEvent(ModelEvent e) {
            if (e instanceof ModelAddedEvent) {
                // model is loaded
            }
        }
    }));
    m.load();

    if (m.get() != null) {
        deviceModel = m.get();
    }

    capabilityUtils = new CapabilityUtils(deviceModel);

    getZoneNames();

    stationPicker = (NumberPicker) contentView.findViewById(R.id.station_picker);
    stationPicker.setMinValue(1);
    stationPicker.setValue(1);
    stationPicker.setMaxValue(zoneNameArr.length);
    for(int i = 0; i < zoneNameArr.length; i++){
        zoneNameArrTrunk[i]=StringUtils.abbreviate(zoneNameArr[i],20);
    }
    stationPicker.setDisplayedValues(zoneNameArrTrunk);

    updateTimeSelector();

    zoneSelection = (Version1TextView) contentView.findViewById(R.id.zone_selected);
    durationSelection = (Version1TextView) contentView.findViewById(R.id.duration_selected);
}