【问题标题】:Dismiss Dialog Fragment when pressed outside在外面按下时关闭对话框片段
【发布时间】:2013-08-13 05:16:29
【问题描述】:

我使用 Dialog Fragment 我扩展它

public class DocumentLibrarySelectionFragment extends DialogFragment 

我不确定当用户在它外面按下时如何关闭这个对话框(我在我的活动中显示这个对话框)。我浏览了其他相关问题,但找不到完整的答案,例如这里的How to dismiss a DialogFragment when pressing outside the dialog?,在第一个答案中添加这行代码的位置在哪里?谢谢。

【问题讨论】:

    标签: android dialog android-fragments


    【解决方案1】:

    onCreateView,可以添加DialogFragment.getDialog().setCanceledOnTouchOutside(true);

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        ...
        getDialog().setCanceledOnTouchOutside(true);
        ... 
    }
    

    【讨论】:

    • 在我的 DialogFragment 实现中添加这个方法还是?我的片段实现中只有 @Override public Dialog onCreateDialog(Bundle savedInstanceState) { 方法?
    • 正如 Blackbelt 所说 (stackoverflow.com/a/16480564/6444297),而不是 'getDialog().setCancelable(false);'你必须直接使用'setCancelable(false);'
    猜你喜欢
    • 2012-01-14
    • 2014-10-21
    • 2018-03-04
    • 1970-01-01
    • 1970-01-01
    • 2013-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多