我在gridview上动态创建图标,我想访问网格视图上的被点击项目。
Onclick事件显示如下元素
我需要使用代码获取textview的文本,或者我想访问mTransformed的值。我怎么能实现它?
public void onClick(View v) {
ArrayList<View> result = new ArrayList<View>();
ViewGroup viewGroup = (ViewGroup) v;
for (int i = 0; i < viewGroup.getChildCount(); i++) {
View child = viewGroup.getChildAt(1);
int id = child.getId();
}
}
答案 0 :(得分:4)
如果您要动态创建图标,只需将ID设置为 view.setId(1); 获取id号码并不是必需的 只是打电话 view.getId(); 这将自动获取特定视图的id但是应该小心给出id,因为如果两个不同的视图具有相同的id,如view1.setId(1);和view2.setId(1);然后你会得到一个错误 如果要动态创建视图,请给出setId(i);并循环运行
答案 1 :(得分:1)
onClick返回您单击的视图。因此,如果单击TextView,您可以轻松完成:
public void onClick(View v) {
int id = v.getId();
if (id == R.id.idoftextview) {
String text = ((TextView)v).getText().toString();
}
}