接下来是我的问题。我在这个main.xml示例中有一个带有许多textview的RelativeLayout。
main.xml
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:background="#000000"
android:id="@+id/RelativeLayout"
>
<TextView
android:id="@+id/tv00"
android:background="#ffffff"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:clickable="true"></TextView>
<TextView
android:id="@+id/tv01"
android:layout_width="wrap_content"
android:layout_below="@+id/tv00"
android:padding="5dp"
android:clickable="true"></TextView> ...
...</RelativeLayout>
我想在我的activity.java中访问我点击的textview的id。怎么做? 使用onClickListener我可以侦听RelativeLayout,但是如何在该布局中为特定的textview执行此操作。有什么用getid()?
activity.java
RelativeLayout rv =(RelativeLayout)findViewById(R.id.RelativeLayout);
rv.setOnClickListener(new View.OnClickListener(){
public void onClick(View v) {
}
});
感谢您的帮助。
答案 0 :(得分:0)
据我所知,没有像RelativeLayout的“onChildClick”监听器。
您可以迭代TextViews(使用rv.getChildCount()
和rv.getChildAt(i)
)并将单击侦听器添加到各个视图中...但是,如果您的RelativeLayout只包含TextView列表,您可能需要考虑使用{ {3}}代替(及其setOnItemClickListener()
)。