【问题标题】:Turn off card dimming in VerticalGridFragment in leanback sample在leanback示例中关闭VerticalGridFragment中的卡片调光
【发布时间】:2016-10-17 00:23:24
【问题描述】:

我正在使用 git 示例中的 VerticalGridFragment 仅显示信息而不希望用户交互。我成功关闭了关注 CardPresenter.cs 的用户,但我还想更改所有卡片,使其不暗淡。

这是课程的屏幕截图和我想关闭的调光。 http://corochann.com/verticalgridfragment-android-tv-application-hands-on-tutorial-19-718.html

我曾尝试更改 CardPresenter 类中的 alpha,但这似乎没有任何作用。任何帮助将不胜感激!

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);
}

【问题讨论】:

    标签: android android-fragments android-tv leanback


    【解决方案1】:

    像这样创建您的演示者:

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

    “false”用于启用/禁用调光

    【讨论】:

      【解决方案2】:

      您可能希望开始使用这些主要用于将暗淡级别或颜色应用于您的视图的辅助类。

      • ColorOverlayDimmer

        用于为 Paint 分配暗淡颜色的助手类。它保存当前活动级别的 alpha 值。

      • ColorFilterDimmer

        用于将暗淡级别应用于视图的助手类。 ColorFilterDimmer 使用 Paint 对象中的 ColorFilter 来根据当前活动的级别使视图变暗。

      Java 中的示例实现代码可以在here 找到。希望对您有所帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-11-01
        • 1970-01-01
        相关资源
        最近更新 更多