android中监听layout布局
16lz
2021-01-26
android开发可以对layout文件夹中的xml文件里的布局进行监听,并处理事件,如:对RelativeLayout,LinearLayout,FrameLayout,GridLayout等布局容器进行监听,当有点击事件事做出相应的响应。代码如下如下:
1 @Override 2 3 public void onActivityCreated(Bundle savedInstanceState) 4 5 { 6 //我这是在fragment里所以用getView(),如果是在activity中直接用this就行 7 8 LinearLayout ll=(LinearLayout) getView().findViewById(R.setting_layout.center_button_layout); 9 10 ll.setOnClickListener(new AccountListener()); super.onActivityCreated(savedInstanceState); 11 12 } 13 14 class AccountListener implements OnClickListener{ 15 16 @Override public void onClick(View v) {17 18 Log.i("tag", "accountOnClick"); 19 20 } 21 22 }
注意事项: 1:只能用来监听用findviewbyid拿到的View再强转成相应布局(比如xml文件最外层是用的linearLayout那也不能直接getView就来设置,必须要先给layout一个id然后再取得)。 2:layout里有button等控件的话监听了layout但点击到button上是不能产生事件的,只有点击到button以外,layout以内时才有事件发生(要想使button不挡着layout的焦点可以把button的focusable设置为false)。 3:如果手机点击按钮有声音那么要在代码中设置了监听器,手机上点击才会有声音。
更多相关文章
- android ndk开发环境搭建(windows环境下)
- 查看Android中的AlarmManager事件
- Android(安卓)WIFI状态监控
- [Android]使用AdapterTypeRender对不同类型的item数据到UI的渲染
- android获取监听SD Card状态的方法
- 如何在xml中直接添加view点击监听(参考rayleung博客)
- Android(安卓)View的事件传递机制
- 深入研究Android事件传递与重绘
- android亮屏、黑屏、解锁事件的系统广播接收