gpt4 book ai didi

java - 如何在fragment中实现dialogfragment?

转载 作者:行者123 更新时间:2023-12-02 12:14:49 25 4
gpt4 key购买 nike

我有一个关于dialogfragment的问题 - 我通过教程创建了一个带有dialogfragment的类,但在教程中,dialogfragment是通过单击按钮显示的 - 我想通过单击我的MainActivity中的fragment选项卡来显示dialogfragment - 我不能弄清楚如何..我有 Fragment GetItem 方法,其中我的代码中有空的 case 4 - 这是 fragment ,我想通过单击它来打开dialogfragment。这是我的代码。感谢您的所有帮助和解答!抱歉,如果有不清楚的地方..

-问题已修复(即评论)-我创建了新的 DialogFragment - xml 文件和 java 类 - 来自guides.codepath.com/android/Using-DialogFragment#build-dialo‌​g 的代码,然后我将此代码添加到 MainActivity

 tabLayout.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mViewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
int position = tab.getPosition();
if (position == 4) {
showAlertDialog();
}
}
});
}
private void showAlertDialog() {
FragmentManager fm = getSupportFragmentManager();
EditNameDialogFragment alertDialog = EditNameDialogFragment.newInstance("Some title");
alertDialog.show(fm, "fragment_alert");
}

最佳答案

您可能想要检测单击了哪个选项卡并像其他任何选项卡一样显示对话框

您需要添加一个TabLayout.OnTabSelectedListener

设置

tabLayout.setupWithViewPager(mViewPager);
tabLayout.setOnTabSelectedListener(new TabLayout.ViewPagerOnTabSelectedListener(mViewPager) {
@Override
public void onTabSelected(TabLayout.Tab tab) {
super.onTabSelected(tab);
int position = tab.getPosition();
if (position == 4) {
// Create MediaFragment here
}
}
});

关于java - 如何在fragment中实现dialogfragment?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46267304/

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