最近项目将近尾声,昨天测试来告诉我,这个按钮怎么不太灵活。
刚开始我还开玩笑说,对android手机宽容一些。今天早上为了证明,确实是android系统的问题,我打log测试,于是发现了一个意外的事情。
界面如下:
要点击的是切换房源这里,为了增大点击面积:布局如下
<RelativeLayout android:id="@+id/switch_house" android:layout_width="100dp" android:layout_height="40dp" android:gravity="center_vertical" > <ImageButton android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/switch_house" /> </RelativeLayout>但是我发现,点击的时候有时候起作用,有时候不起作用,log显示的结果是有时候点击的时候,压根就没有走点击的方法。上网查了一下,有人说,外面包裹的点击事件RelativeLayout布局的点击焦点有时候会被里面的ImageButton抢占,于是,有时候点击就失灵了。
我试着将里面的ImageBtton换成ImageVIew。给外面的RelativeLayout+“属性 focusableTouchMode ,然后运行,果然好使了。哈哈
修改后的布局:
<RelativeLayout android:id="@+id/switch_house" android:layout_width="100dp" android:layout_height="40dp" android:gravity="center_vertical" android:focusableInTouchMode="true" > <ImageView android:layout_alignParentRight="true" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@mipmap/switch_house" /> </RelativeLayout>
一个小小的意外发现,希望给遇到类似问题的同学一些帮助!