2016-07-14 1 views
10

Приложение Android TV извлекает изображения с сервера и отображает их на главном экране. Проблема в том, что все изображения, которые не сфокусированы, то есть не выбраны, содержат черный прозрачный фон.Android TV: несфокусированное изображение содержит черный прозрачный фон?

Единственное изображение, не содержащее прозрачный фон, - это выбранное в данный момент изображение. Я удостоверился, что изображения были pngs. Как только изображение сфокусировано, фон удаляется.

Я не использую LinearLayout или что-нибудь в .xml, просто класс GridItemPresenter.

Что вызывает это и как я могу это исправить?

Я попытался добавить следующее: view.setBackgroundColor(Color.TRANSPARENT), но это не действует.

Вот мой код:

private class GridItemPresenter extends Presenter 
{ 
    public ViewHolder onCreateViewHolder(ViewGroup parent) 
    {  
     ImageView view = new ImageView(parent.getContext()); 

     view.setBackgroundColor(Color.TRANSPARENT); 

     view.setLayoutParams(new ViewGroup.LayoutParams((int)x, (int)y)); 
     view.setFocusable(true); 
     view.setFocusableInTouchMode(true); 
      return new ViewHolder(view); 
    } 

    public void onBindViewHolder(ViewHolder viewHolder, Object item) 
    { 
     ImageView imageView = ((ImageView) viewHolder.view); 

    } 

    public void onUnbindViewHolder(ViewHolder viewHolder) 
    { 
     ImageView imageView = ((ImageView) viewHolder.view); 
    } 
} 

Лица содержит черный фон при невыбранном, но так как он выбран, фоне не существует: enter image description here

+0

Возможно, вы можете прикреплять снимок экрана с проблемой? – ULazdins

+0

@ULazdins, сделано – Pangu

+0

Вы не зашли проверить изображение, чтобы увидеть, что фон есть? – JoxTraex

ответ

4

Я нашел способ исправить это. диммер по умолчанию VertiGridPresenter «s является true, установите его false как:

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

или изменить элемент <item name="overlayDimDimmedLevel">10%</item> темы в @style/Theme.Leanback, процентное значение установлено прозрачное значение при установке 100% фон будет черным.

Смежные вопросы