在根布局中使用<include>
标签再使用设置点击事件时应使用<include>
标签的id
,如下的布局设置:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:descendantFocusability="blocksDescendants">
<include android:id="@+id/musicItem" layout="@layout/music_list_item" android:visibility="gone" />
<include android:id="@+id/loadingLayout" layout="@layout/music_list_loading_item_layout" />
</FrameLayout>
在代码中设置点击事件:
......
\\ binding为上方布局文件对应的ViewBinding
\\ binding.musicItem.item 为引入的第一个布局文件的根布局
binding.musicItem.item.setOnClickListener(this);
.......
则在onClick
中判断应写为:
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.musicItem:
//此处musicItem为<include>标签ID
Log.e(TAG,"item");
break;
}
}