gpt4 book ai didi

android - DialogFragment.getDialog 返回 null

转载 作者:IT王子 更新时间:2023-10-28 23:40:19 33 4
gpt4 key购买 nike

我正在尝试使用 DialogFragment.getDialog() 获取使用扩展 DialogFragment 创建的 Dialog,但它返回 null。

基本上我想从创建并显示 DialogFragmentFragmentActivity 更改布局中的文本。

最佳答案

您在 DialogFragment 的生命周期中过早地调用 getDialog()

getDialog() 只是从 DialogFragment 中返回私有(private)变量 mDialog

DialogFragment 被实例化时 mDialog 为空,然后在 getLayoutInflater(Bundle savedInstanceState 中触发 onCreateDialog 时设置它),所以你必须在onCreateDialog之后调用getDialog

例如,一些常用方法调用的顺序是onCreateonCreateDialogonCreateViewonStart .因此,您可以调用 getDialog 并让它在 onCreateViewonStart 中返回某些内容,而不是在 onCreateonCreateDialog.

即使 onStart 被称为 called when the Fragment is visible to the user ,此时调整 fragment 的布局看起来很好......例如使用 getDialog().getWindow().setLayout(..., ...); 设置宽度和高度不会使 fragment 看起来改变大小,而只是看起来具有新设置的大小。

关于android - DialogFragment.getDialog 返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8456143/

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