gpt4 book ai didi

java - 无法从 Activity 中获取 getSupportFragmentManager,错误是 Activity 正在被销毁

转载 作者:行者123 更新时间:2023-11-29 08:43:08 27 4
gpt4 key购买 nike

我的 fragment 类是

public class GetFragmentManager extends FragmentActivity {
public FragmentManager getSupportFragmentMethod(){
FragmentManager s = getSupportFragmentManager();
return s;
}
}

我需要 getSupportFragmentManager 方法(我可以从 FragmentActivity 类中获取)所以我创建了这个扩展 FragmentActivity 类的类。

我的 Activity 代码(扩展了 Activity 类)是

public void showFileChooser(View v){
DialogFragment a =new FireMissilesDialogFragment();
a.show(getSupportFragmentManager1(), "missiles");

}

private android.support.v4.app.FragmentManager getSupportFragmentManager1() {
android.support.v4.app.FragmentManager ab = new GetFragmentManager().getSupportFragmentMethod();
return ab;
}

出现的错误是Activity is being destroyed

谁能找到这里出了什么问题。我花了很多时间在这上面。谢谢大家的时间。

最佳答案

抱歉耽误了您的时间。
似乎 Activity 类有一个方法 getFragmentManager(),我当时知道,但没有正确运行,因为我在代码行中引用类(特别是 fragment 类)时出错。同样在每次导入 fragment 时,我导入的不是 app.v4 支持版本,而是主要版本。

主 Activity 类扩展了 Activity 类

public class Profile extends Activity implements View.OnTouchListener{

和写在同一个类上的open fragment方法

public void showFileChooser(View v){

a =new FireMissilesDialogFragment();
a.show(getFragmentManager(),"text");

}

FireMissilesDialogFragment 如下所示。

public class FireMissilesDialogFragment extends DialogFragment {
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// Use the Builder class for convenient dialog construction
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setMessage("dialog_fire_missiles")
.setPositiveButton("fire", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// FIRE ZE MISSILES!
}
})
.setNegativeButton("cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
// User cancelled the dialog
}
});
// Create the AlertDialog object and return it
return builder.create();
}
}

改变的是,对于每个 app.v4 支持版本导入,我没有导入 v4 版本,而是导入常规版本。即使对话框有效, list 文件也会显示错误“java.lang.IllegalStateException:您需要在此 Activity 中使用 Theme.AppCompat 主题(或后代)”

无论如何,感谢大家的宝贵时间。我会对这两个答案投赞成票,因为它们对此时的到来很有用。

关于java - 无法从 Activity 中获取 getSupportFragmentManager,错误是 Activity 正在被销毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38671881/

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