无与伦比

android自己写输入法不想让dialog滑动

本来在dialog中有类似softinputmode可以设置,但是,试了很多次,都没能成功,最后不得不放弃。下面是另一种证明可用的方法,但也有一些条件。
在输入法中的oninitializeInterface中设置输入法的window类型
getWindow().getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ERROR);
记得好像TYPE_SYSTEM_ERROR类型的window级别最高,貌似它的显示是无条件的。
最后,不要忘了在manifest.xml中加权限
<uses-permission android:name=”android.permission.SYSTEM_ALERT_WINDOW”/>
这样就可以避免dialog向上平移,但要注意的是此时的输入法已经是system_error级别的了,在一些特别的场合,比如待机,输入法的界面可能都不会消失。由于上面这种方式存在缺点,最终,我还是没有用上面的方法。我使用的方法是:

直接使用activity做成dialog的样子,具体方法自己研究下或者可以在网上看看。

退出移动版