android dialog遮挡键盘,Android软键盘遮挡DialogFragment问题解决方案 | 夕辞
DialogFragment是开发中常用的对话框组件,有时候我们为了实现好看的对话框会自定义,比如展示在底部,最近遇到一个问题是展示在底部的DialogFragment,当软键盘弹出后,就遮挡住了,我其实是希望软键盘网上顶的,这里分享下解决办法。第一步:onCreate方法更改。@Overridepublic void onCreate(@Nullable Bundle savedInstance
DialogFragment是开发中常用的对话框组件,有时候我们为了实现好看的对话框会自定义,比如展示在底部,最近遇到一个问题是展示在底部的DialogFragment,当软键盘弹出后,就遮挡住了,我其实是希望软键盘网上顶的,这里分享下解决办法。
第一步:onCreate方法更改。
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//关键在这一句,这个style可以随便定义
setStyle(DialogFragment.STYLE_NO_FRAME, R.style.your_style);
}
比如我的your_style文件是:
第二步:设置键盘适配模式:
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
//你的业务代码
//...
//下一步是重点
Window window = getDialog().getWindow();
window.setSoftInputMode(
WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
return view;
}
怎么样,是不是很简单,其他很多方法都不行,我试了这个方法可以。
更多推荐
所有评论(0)