我正在实施一个应用程序,允许用户通过图库拖动页面来阅读报纸。
我编写了一个适配器,它返回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,但会出现相同的行为。
答案 0 :(得分:1)
您需要在Gallery上指定unselectedAlpha属性。
通过你的java(根据你的例子)
view.setUnselectedAlpha(1.0);
如果您使用xml声明图库,请添加
android:unselectedAlpha="1.0"