大家好 =) 我是一名新的 android 开发人员,我需要关于解除片段的帮助。
我的应用程序有一个登录片段,当用户触摸它的外部时,我想隐藏登录片段。我怎么能做这个?OnTouchEvent() 方法是否有用?
请说点什么。谢谢 =)
大家好 =) 我是一名新的 android 开发人员,我需要关于解除片段的帮助。
我的应用程序有一个登录片段,当用户触摸它的外部时,我想隐藏登录片段。我怎么能做这个?OnTouchEvent() 方法是否有用?
请说点什么。谢谢 =)
将登录布局放置在透明的全屏布局中,并在较大的布局上检测触摸事件。
我认为更好的方法是删除片段以释放内存资源。
我的解决方案是在片段中有这个方法:
private void closeFragment() {
getActivity().getSupportFragmentManager().beginTransaction().remove(YOUR_FRAGMENT.this).commit();
}
再次嗨 =) 我在我的主页活动中使用 OnTouchListener 解决了这个问题。我的主页布局中有一个 gridviews 背景,如果用户没有登录,onTouch()
方法运行。当登录片段可见并且用户触摸它之外我hideLoginFragment() 方法调用解除片段..
gridView = (ShelvesView) findViewById(R.id.grid_shelves);
gridView.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (application.getDbManager().getUser().key.equals("-1")){
hideLoginFragment();
loginButton.setVisibility(View.VISIBLE);
exitButton.setVisibility(View.INVISIBLE);}
return false;
}
});