Есть ли способ скрыть верхние и нижние значения в NumberPicker

Я хочу использовать this NumberPicker (поскольку по умолчанию он не очень настраиваемый), но я хочу скрыть верхний и нижний уровни, показывая только центральную строку... это возможно? Я также попытался удалить fadingEdges, но, как я читал, это устаревший атрибут; даже overScrollMode не работает

Ответы

Ответ 1

Я хочу скрыть верхний и нижний уровни, показывая только центр строка... это возможно?

Глядя на исходный код, вы можете попробовать несколько вещей. Самым простым было бы изменить следующую константу на 1, поскольку она управляет номерами, отображаемыми на колесе селектора:

private static final int SELECTOR_WHEEL_ITEM_COUNT = 3;

Если это не сработает, вы можете изменить процедуру рисования, чтобы пропустить любой индекс, который не находится в центральной строке. Вы захотите посмотреть строки 1468 - 1482.

Я не уверен, что вы пытаетесь сказать о затухающих ребрах, но если вы пытаетесь удалить их, это может быть так же просто, как вернуть 0 в эти два метода: строки 1426 - 1434:

@Override
protected float getTopFadingEdgeStrength() {
    return TOP_AND_BOTTOM_FADING_EDGE_STRENGTH;
}

@Override
protected float getBottomFadingEdgeStrength() {
    return TOP_AND_BOTTOM_FADING_EDGE_STRENGTH;
}

Ответ 2

К сожалению, я не знаю, как это сделать... Для тех, кто хочет альтернативное решение.... Я применил Viewpager вместо выбора номера, чтобы сделать его вертикальным, я попробовал ссылка и применяется Onpagechangelistner. Просто сделано...