Nis*_*hah 1 android border set gallery
我已经实现了GalleryView.我想在Gallery中选择的图像上显示边框图像.
Gallery ga = (Gallery)findViewById(R.id.Gallery01);
ga.setAdapter(new ImageAdapter(this));//, android.R.layout.simple_list_item_1, items));
imageView = (ImageView)findViewById(R.id.ImageView01);
ga.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapter, View view, int location,
long arg3) {
imageView.setImageResource(items.get(location));
final ImageView iv = (ImageView) adapter.getSelectedView();
iv.setBackgroundResource(R.drawable.large_button_sel_liner);
}
});
Run Code Online (Sandbox Code Playgroud)
和我的Adapter类
class ImageAdapter1 extends ArrayAdapter<Integer> {
private Context ctx;
private List<Integer> items;
public ImageAdapter1(Context context, int textViewResourceId,
List<Integer> objects) {
super(context, textViewResourceId, objects);
items = objects;
ctx = context;
}
@Override
public int getCount() {
return items.size();
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
final ImageView iv = new ImageView(ctx);
iv.setImageResource(items.get(position));
iv.setScaleType(ImageView.ScaleType.FIT_XY);
iv.setLayoutParams(new Gallery.LayoutParams(150,120));
return iv;
}
}!
Run Code Online (Sandbox Code Playgroud)
它完全被捣碎了.

我有使用Selector的解决方案.
我创建了galleryselector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true"
android:drawable="@drawable/large_button_sel_liner"/>
<item android:drawable="@android:color/transparent" /></selector>
Run Code Online (Sandbox Code Playgroud)
并在getView()中的Adapter类中设置它:
imageView.setBackgroundDrawable(getResources().getDrawable(R.drawable.galleryselector));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6290 次 |
| 最近记录: |