我有一个引起冲突的奇怪问题.我不得不切换到原Fragments生来修复它,但有一些错误.
我原来的问题:我有一个导航抽屉设置v4 Fragments.要在我的一个片段中请求许可我打电话ActivityCompat.requestPermissions(getActivity(), Manifest.permission.ACCESS_FINE_LOCATION, 1);提示显示正常,但是当我接受或拒绝许可时,没有任何反应.onRequestPermissionsResult()永远不会调用回调.相反,它会在我的片段附加到的Activity中调用.对我来说没用,我需要回调才能在Fragment中工作.
考虑到这一点,我被告知我需要使用FragmentCompat,但这只能使用native Fragments (v13+),所以我改变了导航抽屉,使用原生Fragments而不是v4支持库Fragments.但是,因为我正在使用AppCompatActivity,所以某些东西不起作用,比如addToBackStack()回到之前的片段.
长话短说,有谁知道我怎么可以使用v4.Fragment并仍然要求获得许可Fragment并获得回调Fragment?我觉得这是Android中的一个错误,但尚未解决,但我不是100%.
让我知道如果你需要查看我的代码,它只是运行时权限所需的标准方法,我想使用v4 Fragments,虽然这不符合我的理解.