短篇小说:
在分配给某些设备的布局中创建更多元素,然后以编程方式为其分配onClickListener
时,我的Android应用行为会是什么?
长篇故事:
我正在开发我的Android应用,以便它可以在所有类型的Android设备上运行,根据我为平板电脑设备创建了一些布局,并为手机设备使用link,现在我只想在 手机设备 中添加Button
,它赢了&# 39;存在于 平板电脑设备 中,我在这里询问此过程对我的应用的影响,因为我必须以编程方式访问该按钮并添加一个Listener
,我的意思是我的应用程序在从平板电脑打开时会崩溃吗?
答案 0 :(得分:1)
如果在XML中定义可视元素,则可以使用findViewById()
方法在代码中获取对它的引用,例如
someButton = (Button) findViewById(R.id.someButton);
如果该按钮仅适用于某些布局,则当它不可用时将返回null(调用此方法是安全的,如果按钮不在布局中,则不会失败)。在这种情况下,您需要在执行任何操作之前始终检查按钮是否可用(非空)。记得每次都检查一下。
if (someButton != null) {
// now you can use the button
}