当前位置: 首页 > 知识库问答 >
问题:

DialogFragment在旋转时消失,尽管SetRetaInstance(true)

佘缪文
2023-03-14

我有一个“Hello World”样例应用程序,它使用android-support-v4 fragments API。活动由一个按钮组成,单击它将显示一个DialogFragment。但是,即使使用了SetRetaInstance(true),像旋转这样的配置更改也会导致对话框消失。

你知道怎么解决这个问题吗?

retfragment.java

package me.local.HelloFroyo;

import android.os.Bundle;
import android.support.v4.app.*;
import android.util.Log;
import android.view.*;

public class RetFragment extends DialogFragment {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRetainInstance(true);
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        return inflater.inflate(R.layout.hello_dialog_fragment, container);
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        Log.e("RET", "onDestroy");
    }
}
package me.local.HelloFroyo;

import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.view.View;

public class MainActivity extends FragmentActivity {

    private static final String TAG_DLG = "myFragDlg";

    public void onCreate(Bundle savedInstanceState){
        super.onCreate(savedInstanceState);
        this.setContentView(R.layout.activity_main);
    }

    public void onShowClick(View v) {
        RetFragment ret = new RetFragment();
        ret.show(getSupportFragmentManager(), TAG_DLG);
    }
}

共有1个答案

龙凯
2023-03-14

只是对此发表评论:

“即使使用了SetRetaInstance(true)。”

不是“即使”,而是“因为它”如果SetRetaInstance为false,则对话框旋转得很好。

@Override
public void onDestroyView()
{
    Dialog dialog = getDialog();

    // Work around bug: http://code.google.com/p/android/issues/detail?id=17423
    if ((dialog != null) && getRetainInstance())
        dialog.setDismissMessage(null);

    super.onDestroyView();
}
 类似资料:
  • 问题内容: 我想通过CSS旋转加载图标。 我有一个图标和以下代码: 但这是行不通的。如何使用CSS旋转图标? 问题答案:

  • 问题内容: 我尝试旋转一个名为pic的BufferImage实例时,尝试对其进行调整大小,倾斜和裁剪图像,有关使其正常工作的任何建议 当我旋转90°时,它可以正常工作,所以我想知道问题是否出在图像的形状上? 问题答案: 与配合使用时,您可以使用类似以下内容的正方形图像:

  • 问题内容: 我想找出悬停时如何制作 旋转或旋转的图像 。我想知道如何在以下代码上使用 CSS 模仿该功能: 问题答案: 您可以将CSS3过渡与一起使用,以 在悬停时旋转图像 。 旋转图像:

  • 我已经创建了一个秘密,并将其更新为具有lambda旋转函数 https://forums.aws.amazon.com/thread.jspa?thread=280093&tstart=0不适用于我,因为我没有状态中的秘密。

  • 我试图在Apache Beam中运行一个非常简单的程序来尝试它是如何工作的。 在运行此操作时,我得到以下错误 谢谢

  • 见下图: 左边是我目前拥有的,右边是我试图实现的,或者至少在某个地方有一个向下箭头。关于如何创建这个背景有什么想法吗?