android中监听layout布局

时间:2025-04-12 09:07:25

android开发可以对layout文件夹中的xml文件里的布局进行监听,并处理事件,如:对RelativeLayout,LinearLayout,FrameLayout,GridLayout等布局容器进行监听,当有点击事件事做出相应的响应。代码如下如下:

  @Override 

 public void onActivityCreated(Bundle savedInstanceState) 

 {
//我这是在fragment里所以用getView(),如果是在activity中直接用this就行 LinearLayout ll=(LinearLayout) getView().findViewById(R.setting_layout.center_button_layout); ll.setOnClickListener(new AccountListener()); super.onActivityCreated(savedInstanceState); } class AccountListener implements OnClickListener{ @Override public void onClick(View v) { Log.i("tag", "accountOnClick"); } }

注意事项: 1:只能用来监听用findviewbyid拿到的View再强转成相应布局(比如xml文件最外层是用的linearLayout那也不能直接getView就来设置,必须要先给layout一个id然后再取得)。 2:layout里有button等控件的话监听了layout但点击到button上是不能产生事件的,只有点击到button以外,layout以内时才有事件发生(要想使button不挡着layout的焦点可以把button的focusable设置为false)。 3:如果手机点击按钮有声音那么要在代码中设置了监听器,手机上点击才会有声音。