android – 如何从PreferenceFragment显示一个Dialog?

当我在PreferenceFragment中点击一个Preference时,我正试图调出一个DialogFragment.不幸的是,当我在DialogFragment.show()中调用getFragmentManager()时,我收到以下错误

Cannot resolve method ‘show(android.app.FragmentManager,java.lang.String)’

问题是我似乎无法从这个片段中引用android.support.v4.app.FragmentManager.负责这个片段的活动从FragmentActivity延伸,但显然这还不够.我也试过调用getSupportFragmentManager(),但这给了我这个错误

Cannot resolve method ‘getSupportFragmentManager()’

我怎样才能做到这一点?

这是一些代码

gPrefAckNowledgements.setonPreferenceClickListener(new Preference.OnPreferenceClickListener()
{
    @Override
    public boolean onPreferenceClick(Preference preference)
    {
        DialogAckNowledgements dialogAck = new DialogAckNowledgements();
        dialogAck.show(getFragmentManager(),"ackNowledgements");
        return true;
    }
});

解决方法

基于Steve的回答,我还需要设置DialogFragment以从android.app.DialogFragment(而不是android.support.v4.app.DialogFragment)导入.该库中的show()函数请求android.app.FragmentManager,我可以通过调用getFragmentManager()来提供,就像我在问题中发布的代码中所做的那样.

相关文章

这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...
这篇文章主要介绍“Android岛屿数量算法怎么使用”的相关知识...
本篇内容主要讲解“Android如何开发MQTT协议的模型及通信”,...
本文小编为大家详细介绍“Android数据压缩的方法是什么”,内...