<分区>
所以我为我的应用程序创建了一个 fragment 。在 fragment 中,我有一个通过 xml 文件创建的 EditText
字段(其 id 是 myText
)。现在,在这个 fragment 的 Java 类中,我正在使用以下命令创建对此文本字段的引用:
EditText myText = (EditText) getView().findViewById(R.id.myText);
但是,我收到关于此声明的警告:
Method invocation `getView().findViewById(R.id.myText)' may produce 'java.lang.NullPointerException'.
此外,当我运行该应用程序时,它会由于相同的 NullPointerException
而提前终止。我做了完全相同的事情,只是没有使用 fragment (也就是说,我在我的主要 Activity 的 xml 文件中创建了一个 EditText
字段)并使用以下命令在 Java 文件中创建了对它的引用:
EditText myText = (EditText) findViewById(R.id.myText);
而且效果很好。
所以我的问题是,为什么这适用于第二种情况而不适用于第一种情况?我如何让它在第一种情况下起作用?