我希望将我的选项卡设置为每个选项卡具有不同的
是否有任何方法可以从Java代码访问清单属性?
windowSoftInputMode
属性。当所有选项卡的处理都来自一个单一活动时,如何从Java类中访问此属性?是否有任何方法可以从Java代码访问清单属性?
windowSoftInputMode
属性。当所有选项卡的处理都来自一个单一活动时,如何从Java类中访问此属性?使用以下代码更改Activity的软键盘输入模式。
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
使用以下代码更改EditText的软键盘输入类型。
mEditText.setImeOptions(EditorInfo.IME_ACTION_DONE);
感谢 @Eliezer 进行了修正
根据Prasham的评论,我按照他说的做了,这救了我的命,感谢他!当您有一个带有ScrollView
并动态填充它时,EditText
和SoftWindowInput
模式会出现一些问题。
由于我已经看过了这篇文章,但仍然继续阅读其他答案/评论(像Prashan的那个),所以我决定将其写在一个新的帖子中。
下面是我在ScrollView
中使用的代码:
Activity.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
我希望在标签页中使用两种不同的模式,分别是SOFT_INPUT_ADJUST_RESIZE
和SOFT_INPUT_ADJUST_NOTHING
。
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
上面的代码行本身无法正常工作。应用程序始终处于状态ADJUST_NOTHING
。但是,如果在AndroidManifest.xml文件中的<activity>
标记中插入windowSoftInputMode="adjustResize"
,则默认情况下调整应用程序窗口大小。此外,当您调用以下行时:
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
它将按预期运行,不会调整任何尺寸。
附:答案的改进
windowSoftInputMode="adjustResize"
可以帮助管理后面的标志,特别是在一个场景中,你大多数情况下都有 Single Activity 中的 Fragments。因此,可以通过编程方式从 SOFT_INPUT_ADJUST_RESIZE
切换到 SOFT_INPUT_ADJUST_NOTHING
来动态地保持 Activity 的输入状态。真棒! - sud007 protected override void OnCreate(Bundle savedInstanceState)
{
base.OnCreate(savedInstanceState);
SetContentView(Resource.Layout.DetailDesign);
Window.SetSoftInputMode(SoftInput.AdjustPan);
}
android.view.inputmethod.InputMethodManager imm = (android.view.inputmethod.InputMethodManager) context
.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
谢谢 Deepak
adjustPan
和adjustResize
等属性,可以使用WindowManager.LayoutParams
类,该类中有许多有用的常量可在setSoftInputMode
方法中使用。 - PrashamgetWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
我已经测试过了,确实有效。 - Humberto CastañedagetWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_NOTHING);
但是键盘仍然会将我的FrameLayout推上去,它在其他视图之上。除此之外,其他视图保持原位。当我将其添加到清单中时,它有效,但我不想将其应用于整个活动。 - Tamás Kozmér