gpt4 book ai didi

android - 防止在显示 fragment 时单击 Activity 中的按钮

转载 作者:行者123 更新时间:2023-11-29 00:13:03 25 4
gpt4 key购买 nike

ActivityFragment 之间的交互出现问题。

我有一个 main Activity 和一个带有布局按钮和文本输入的 into Activity。当我在 main Activity 中打开 Fragment 时,我仍然可以点击 Activity 中的按钮并打开Fragment 再次,或在文本输入中输入文本。

我已经找了两个小时的帮助,但我没有找到答案!

这就是我从 Activity 打开 Fragment 的方式:

FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
SignUp fragment = new SignUp();
fragmentTransaction.add(R.id.fragment_content, fragment);
fragmentTransaction.commit();

这是图片: picture

最佳答案

我遇到了同样的问题并搜索了几个小时来找到解决方案或原因,我找到了。

当您将 fragment 添加到 Activity 时, fragment 和 Activity 的功能两者都会响应屏幕上的触摸。

如果您不想触摸 fragment ,只需在 fragment 的 onViewCreated 函数中创建一个空的 setOnTouchListener 即可。

Java 代码

@Override
protected void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(v, savedInstanceState);
view.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {

return true;
}
});
}

Kotlin 中的代码

override fun onViewCreated(view: View?, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
view!!.setOnTouchListener { view, motionEvent -> return@setOnTouchListener true }
}

关于android - 防止在显示 fragment 时单击 Activity 中的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28818926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com