我正在使用扩展BaseAdapter的类来填充我的布局上的gridView。 当我点击我想我点击了项(其中name是在R.drawable.name名)获取点击项目的名称
所以这里的名字在GridView的要素之一就是我写
gridView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
Intent intent = new Intent(ChoseActivity.this,
GameActivity.class);
String ab = getResources().getResourceEntryName(arg1.getId());
intent.putExtra("AB", ab);
startActivity(intent);
}
}
我有这样的错误
02-27 13:46:49.285: E/AndroidRuntime(24862): FATAL EXCEPTION: main
02-27 13:46:49.285: E/AndroidRuntime(24862): android.content.res.Resources$NotFoundException: Unable to find resource ID #0xffffffff
02-27 13:46:49.285: E/AndroidRuntime(24862): at android.content.res.Resources.getResourceEntryName(Resources.java:1499)
02-27 13:46:49.285: E/AndroidRuntime(24862): at com.example.kersplatt.ChoseActivity$1.onItemClick(ChoseActivity.java:36)
02-27 13:46:49.285: E/AndroidRuntime(24862): at android.widget.AdapterView.performItemClick(AdapterView.java:284)
02-27 13:46:49.285: E/AndroidRuntime(24862): at android.widget.AbsListView$PerformClick.run(AbsListView.java:1812)
我不明白,因为图像点击在我ressources
EDIT1
我想这在我的适配器的getView但仍然有同样的错误:
ImageView imageView = new ImageView(mContext);
imageView.setTag(R.drawable.currentimage);
视图的ID是不相关的使用getResourceEntryName(RESOURCEID)
它所拥有的可绘制资源。您可以将ID设置为视图,然后通过在您的活动中使用findViewById(id)来访问它们。在你的情况下,如果你想检索添加到视图中的drawable,那么你首先需要将视图转换为你使用的视图类型,比如ImageView,然后检索drawable的id并获得资源。 – sromku 2013-02-27 13:54:54
此处的id指向您正在查找的视图的标记。 – lokoko 2013-02-27 13:55:43
,我应该怎么做才能找到drawable的名字? – morg 2013-02-27 13:56:25