我无法找出为什么我的findViewById
没有链接到XML文件,这让我疯狂。它位于XML文件中,但仍未在java MainActivity
文件中查找它。
这是我的XML
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<EditText
android:id="@+id/editCentimeters"
android:layout_width="wrap_content"
android:layout_height="27sp"
android:layout_alignLeft="@+id/editInches"
android:layout_alignTop="@+id/textCentimeters"
android:ems="5" >
<Button
android:id="@+id/buttonConvert"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/editInches"
android:layout_centerHorizontal="true"
android:layout_marginTop="98dp"
android:text="@string/convert" />
这是我的Java
EditText etCentimeters = (EditText) findViewById(R.id.editCentimeters);
Button buttonConvert = (Button) findViewById(R.id.buttonConvert);
答案 0 :(得分:5)
我遇到了同样的问题。只需注释掉抛出错误的行&amp;建立一次项目。 Intellisense( ctrl + space )然后会显示ID。
答案 1 :(得分:0)
在您的活动的onCreate
中使用setContentView(R.layout.main);
答案 2 :(得分:0)
你需要在这里处理两件事: -
EditText etCentimeters = (EditText) findViewById(R.id.editCentimeters);
Button buttonConvert = (Button) findViewById(R.id.buttonConvert);
首先,上述代码应该出现在onCreate()
方法中。
接下来,您需要将该代码段放在onCreate()
方法中的此行之下,而不是之前。(我假设setContentView
已经存在,如果没有,请添加)
setContentView(R.layout.main);
答案 3 :(得分:0)
您可以刷新项目。
并在您的活动中查看您的setContentView(R.layout.YOURLAYOUT_NAME)
。
确保你在活动中使用你的代码。
答案 4 :(得分:0)
只需清洁并构建即可找到ID。
答案 5 :(得分:0)
清理和构建对我不起作用。我必须重新启动Android Studio。