Цвет переднего плана над компонентами в Галерее - PullRequest
0 голосов
/ 26 июля 2011

Я реализую приложение, которое позволяет пользователю перетаскивать страницы через Галерею, чтобы читать газету.

Я написал Адаптер, который возвращает ImageViews с некоторыми битовыми картами, загруженными в приложение.

Моя проблема в том, что первое изображение отлично видно, у следующих серый фон, что делает изображение более темным. После перетаскивания куда-нибудь первый также получает этот передний план. Как я могу избежать моих взглядов, получающих этот передний план?

Теперь я понял, что ImageViews получают определенную ценность на альфа-канале, поэтому вместе с моим черным фоном изображения выглядят темнее. Как я могу избежать этого?

Как и требовалось, вот мой код:

    Gallery view = new Gallery(context);
    view.setSpacing(10);
    view.setAdapter(new PageAdapter(context, pages));
    LayoutParams params = new LayoutParams(600, 300);
    layout.addView(view, params);

и адаптер страницы

закрытый класс PageAdapter расширяет ArrayAdapter { приватный список страниц;

    public PageAdapter(Context c, List<Page> pages) {
        super(c, 0);
        this.pages = pages;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
        Page page = getItem(position);

        ImageView image;

        if (convertView != null)
            image = (ImageView) convertView;
        else
            image = new ImageView(context);

        image.setImageBitmap(ImageUtils.rgb(page.loadNormal()));

        return image;
    }

    public int getCount() {
        return pages.size();
    }

    public Page getItem(int position) {
        return pages.get(position);
    }
}

Этот ImageUtils.rgb был создан для создания копии любого растрового изображения в Bitmap.RGB_586, но происходит то же поведение.

1 Ответ

1 голос
/ 17 августа 2011

Вам необходимо указать свойство unselectedAlpha в Галерее.

Либо через Java (в соответствии с вашим примером)

view.setUnselectedAlpha(1.0);

Если вы используете xml для объявления Галереи,добавить

android:unselectedAlpha="1.0"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...