控件显示之后,点击其他位置隐藏的实现
问题还原:经常出现的场景,在底部弹出自定义的view,希望通过点击屏幕的其他部分,让弹出的view消失。思路:在其他位置写一个主容器,设置其setTouchListener的属性,进行监听。代码:listView.setOnTouchListener(new View.OnTouchListener() {/*** 解决控
·
问题还原:
经常出现的场景,在底部弹出自定义的view,希望通过点击屏幕的其他部分,让弹出的view消失。
思路:
在其他位置写一个主容器,设置其setTouchListener的属性,进行监听。
代码:
listView.setOnTouchListener(new View.OnTouchListener() {
/**
* 解决控件显示之后,
* 点击其他位置隐藏控件
*/
@Override
public boolean onTouch(View v, MotionEvent event) {
hideKeyboard();
more.setVisibility(View.GONE);
emojiIconContainer.setVisibility(View.GONE);
btnContainer.setVisibility(View.GONE);//隐藏图片 拍照框
getCurrentType(); //检查键盘
chatlooker_container_givegift.setVisibility(View.GONE); //赠送礼物隐藏
return false;
}
});
可以把listview换成主容器,比如Linearlayout等。
提供思路如下,仅供大家参考。
github:https://github.com/wangzhongyang00
QQ:425772719
北京麦芽田网络科技有限公司
更多推荐
已为社区贡献1条内容
所有评论(0)