在我的 xml 文件中,我有以下 ListView 。
<ListView
android:id="@android:id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/editText1"
android:layout_centerHorizontal="true"
android:layout_marginTop="14dp"
android:divider="@color/blue"
android:dividerHeight="2dip"
android:background="@drawable/list_divider"
>
</ListView>
在我的 java 类中,我尝试按如下方式访问 View
ListView myListView = (ListView) findViewById(R.id.list);
“无法解析列表或不是字段”这句话导致我收到错误消息。但是如果我将 id 更改为 android:id="@+id/list"
如何通过这种方式使用 id 访问 View android:id="@android:id/list"
。
此外,两种定义 ID 的方式之间的基本区别是什么。提前致谢
最佳答案
假设您的Activity extends ListActivity
,您可以使用便捷方法访问它
ListView myListView = getListView();
否则您将使用 android.R.id.list
访问它
Also whats the basic difference between two ways of defining ID
@android:id
引用内置的 androidresources
@+id
是用户定义的 id 并将其添加到R.java
文件中,以便稍后使用@id
访问/li>
关于java - @android :id is not recognized by eclipse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29525245/