脚本宝典收集整理的这篇文章主要介绍了Android中FrameLayout无法获取OnClick Event问题,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个FrameLayout,其中包含两个ImageView。 PE="button" class="copyCode code-tool" data-toggle="tooltip" data-placement="top" data-clipboard-text=" " tITle="" data-original-title="复制"> @H_512_14@ <FrameLayout andROId:id="@+id/fragment_userimg_framelayout" android:layout_width="95.0dip" android:layout_height="95.0dip" android:clickable="true" android:layout_centerHorizontal="true" android:layout_marginTop="20.0dip"> <ImageView android:id="@+id/fragment_userImg_default" android:layout_width="95.0dip" android:layout_height="95.0dip" android:layout_gravity="center" android:background="@drawable/Shape_white" android:scaleType="centerCrop" android:src="@drawable/defualt_avater" /> <ImageView android:id="@+id/fragment_userImg" android:layout_width="95.0dip" android:layout_height="95.0dip" android:layout_gravity="center" android:background="@drawable/shape_transparent" android:scaleType="centerCrop" /> </FrameLayout> 然后分别给FrameLayout和两个ImageView设置onclickListener,实际效果只有第二个ImageView响应了点击事件。 原因在于Android的事件分发: 我给三个View都设置了onClickListener,那么实际上第二个ImageView会首先获得一个点击事件,但是它并不会将该事件向下传递:也就是该事件被该View截断,导致前两个View无法获取到这个事件。 那么如果我没有给第二个ImageView设置onClickListener,那么第一个ImageView将获得并截断点击事件。同理,要想获得FrameLayout的点击响应,必须不给它的任何子View设置OnClickListener。脚本宝典总结 以上是脚本宝典为你收集整理的Android中FrameLayout无法获取OnClick Event问题全部内容,希望文章能够帮你解决Android中FrameLayout无法获取OnClick Event问题所遇到的问题。 如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。 本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。 标签:androidandroiddivpost-format-gallery
我有一个FrameLayout,其中包含两个ImageView。
<FrameLayout andROId:id="@+id/fragment_userimg_framelayout" android:layout_width="95.0dip" android:layout_height="95.0dip" android:clickable="true" android:layout_centerHorizontal="true" android:layout_marginTop="20.0dip"> <ImageView android:id="@+id/fragment_userImg_default" android:layout_width="95.0dip" android:layout_height="95.0dip" android:layout_gravity="center" android:background="@drawable/Shape_white" android:scaleType="centerCrop" android:src="@drawable/defualt_avater" /> <ImageView android:id="@+id/fragment_userImg" android:layout_width="95.0dip" android:layout_height="95.0dip" android:layout_gravity="center" android:background="@drawable/shape_transparent" android:scaleType="centerCrop" /> </FrameLayout>
然后分别给FrameLayout和两个ImageView设置onclickListener,实际效果只有第二个ImageView响应了点击事件。
原因在于Android的事件分发: 我给三个View都设置了onClickListener,那么实际上第二个ImageView会首先获得一个点击事件,但是它并不会将该事件向下传递:也就是该事件被该View截断,导致前两个View无法获取到这个事件。 那么如果我没有给第二个ImageView设置onClickListener,那么第一个ImageView将获得并截断点击事件。同理,要想获得FrameLayout的点击响应,必须不给它的任何子View设置OnClickListener。
以上是脚本宝典为你收集整理的Android中FrameLayout无法获取OnClick Event问题全部内容,希望文章能够帮你解决Android中FrameLayout无法获取OnClick Event问题所遇到的问题。
如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。