2016-10-17 1 views
0

Я использую VerticalGridFragment из образца git, чтобы просто отображать информацию и не нуждаться в взаимодействии с пользователем. Я успешно отключил пользовательскую фокусировку в CardPresenter.cs, но я также хотел бы изменить все карты, чтобы они не тускнели.Отключить выключение карты в VerticalGridFragment в примере с откидыванием

Вот скриншот класса и затемнения, которые я хотел бы отключить. http://corochann.com/verticalgridfragment-android-tv-application-hands-on-tutorial-19-718.html

Я попытался изменить альфа внутри класса CardPresenter, но это ничего не делает. Любая помощь будет оценена!

CardPresenter.cs

@Override 
public ViewHolder onCreateViewHolder(ViewGroup parent) { 
    mDefaultBackgroundColor = 
     ContextCompat.getColor(parent.getContext(), R.color.default_background); 
    mSelectedBackgroundColor = 
      ContextCompat.getColor(parent.getContext(), R.color.selected_background); 
    mDefaultCardImage = parent.getResources().getDrawable(R.drawable.movie, null); 

    ImageCardView cardView = new ImageCardView(parent.getContext()) { 
     @Override 
     public void setSelected(boolean selected) { 
      updateCardBackgroundColor(this, selected); 
      super.setSelected(selected); 
     } 
    }; 

    cardView.setAlpha(1.0f); 
    cardView.setFocusable(false); 
    cardView.setFocusableInTouchMode(false); 
    updateCardBackgroundColor(cardView, false); 

    return new ViewHolder(cardView); 
} 

ответ

1

Вы можете начать использовать эти вспомогательные классы, которые в основном используются для применения тусклого уровня или цвета к вашему View.

  • ColorOverlayDimmer

    Вспомогательный класс для назначения тусклого цвета для рисования. Он содержит значение альфа для текущего активного уровня.

  • ColorFilterDimmer

    класс Helper для применения тусклого уровня на View. ColorFilterDimmer использует ColorFilter в объекте Paint, чтобы уменьшить представление в соответствии с текущим активным уровнем.

Пример кода реализации на Java можно найти here. Надеюсь, поможет!

0

создать выступающий как так:

VerticalGridPresenter gridPresenter = new VerticalGridPresenter(FocusHighlight.ZOOM_FACTOR_LARGE,false); 

"ложном" для включения/отключить затемнение