Gallery上组件的前景色

时间:2011-07-26 19:04:03

标签: android imageview android-gallery

我正在实施一个应用程序,允许用户通过图库拖动页面来阅读报纸。

我编写了一个适配器,它返回ImageViews并在应用程序中加载了一些Bitmaps。

我的问题是,第一张图像完美显示,下一张图像有一个灰色的前景,使图像看起来更暗。拖动某个地方后,第一个也得到了这个前景。如何避免我的观点获得这个前景?

现在我意识到ImageViews在alpha通道上获得了一些价值,这就是为什么在我的黑色背景下,图像看起来更暗。我怎么能避免它?

在征求意见时,这是我的代码:

    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 个答案:

答案 0 :(得分:1)

您需要在Gallery上指定unselectedAlpha属性。

通过你的java(根据你的例子)

view.setUnselectedAlpha(1.0);

如果您使用xml声明图库,请添加

android:unselectedAlpha="1.0"
相关问题