我读了所有类似的问题,但在我的案例中没有任何有用的问题。我有一个活动,它会在启动时自动显示软键盘。它工作得很流畅,没有错误。但问题是我需要使用这个活动的权限,所以当第一次执行活动并请求(然后授予)权限时,软键盘无论如何都不会出现(我甚至需要按2-3次edittext才能加载),我可以使用recreate()方法来修复它,因为它只需要一次,但你知道屏幕刷新延迟会降低应用程序的质量。你有什么建议吗?谢谢
发布于 2018-09-10 15:23:22
我想出了一种方法,尽管它在你的特定场景中可能没有帮助,但可能会帮助其他人。您可以在接受/拒绝权限后,将希望看到键盘的活动的windowSoftInputMode设置为stateAlwaysVisible,系统会自动弹出。
发布于 2020-11-16 20:16:23
我在使用Dexter
库时遇到了这个问题,我想您也在使用它。
为使用Dexter库的用户提供的解决方案:您必须在PermissionListener
的onPermissionRationaleShouldBeShown
事件中调用token.continue Permission Request();
。
Dexter.withContext(activity)
.withPermissions(
Manifest.permission.ACCESS_FINE_LOCATION,
Manifest.permission.ACCESS_COARSE_LOCATION
)
.withListener(new MultiplePermissionsListener() {
@SuppressLint("MissingPermission")
@Override
public void onPermissionsChecked(MultiplePermissionsReport report) {
}
@Override
public void onPermissionRationaleShouldBeShown(List<PermissionRequest> permissions, PermissionToken token) {
token.continuePermissionRequest();
}
})
.check();
https://stackoverflow.com/questions/51593850
复制相似问题