如果我有ImageButton myPicture
。我可以说myPicture = (ImageButton) findViewById(myPicture.getId());
吗?
无论如何我可以实现这个吗?
答案 0 :(得分:3)
如果myPicture
对象已存在,为什么要重新创建它?
是的,如果已经在应用程序上下文中创建了myPicture
个对象,或者之前已经引用了布局中的ID,那么这将有效。
你不能将它作为第一次初始化使用,因为对象是null,你必须先从布局中获取它。
修改强>
在回复上面的评论时,您可以使用XML文件创建模板布局,然后在Java代码中,在循环内部扩展模板布局,添加所需信息,而不是执行此操作64次。
答案 1 :(得分:0)
当然你不能,因为右边操作数中的myPicture
仍为空,这可能会导致NullPointerException
,但你没有抓到任何ImageButton
视图
你要么以编程方式创建一个
ImageButton imageButton=new ImageButton(this);
或者您在布局XML文件上绘制它,然后使用findViewById(R.id.imageButtonId)
这实际上会创建ImageButton
的视图,然后您可以选择它,但按照您的方式,还没有可供选择的视图