【问题标题】:Android Keyboard cover EditText when i click it second time当我第二次单击它时,Android 键盘会覆盖 EditText
【发布时间】:2015-11-22 03:07:49
【问题描述】:

我在活动底部附近有一个 EditText。 当我第一次单击时出现键盘,然后所有布局向上移动以使 EditText 可见以在其中写入并查看您的数字。

当我关闭键盘(使用 DONE 按钮)并再次单击 EditText 时,布局不会移动,并且 EditText 完全被键盘覆盖。

我尝试了 ScrollView、AdjustResize 和 AdjustPan,但没有任何改变。

            <com.mypackage.widget.CEditText
                android:id="@+id/myETid"
                android:layout_width="@dimen/edittext_medium_width"
                android:layout_height="wrap_content"
                android:layout_gravity="center_vertical"
                android:background="@drawable/background_edittext"
                android:gravity="center_horizontal"
                android:inputType="number"
                android:maxLength="14"
                android:padding="@dimen/activity_smargin"
                android:singleLine="true"
                android:textColor="@android:color/black"
                android:textSize="@dimen/font_midcommon_size"
                app:typeface="@string/commonFontRegular" />

这是我的自定义 EditText(它只是扩展标准 EditText 来管理字体)

    <activity
        android:name=".gui.activity.MyActivity"
        android:label="@string/activity_name"
        android:windowSoftInputMode="stateHidden|adjustPan"
        android:screenOrientation="landscape" >
    </activity>

这是我在 AndroidManifest 中的 Activity 条目。

有什么想法吗?

【问题讨论】:

  • 你试过android:windowSoftInputMode="adjustPan"吗?
  • 是的,我尝试使用 android:windowSoftInputMode="adjustPan" 和 android:windowSoftInputMode="adjustResize"。在 Edittext xml 或 AndroidManifest 中,但未解决会费
  • @MicheleCassani 你能找到解决方案吗?我面临同样的问题,我似乎无法找到解决方案,谢谢
  • @ahmad 我面临同样的问题。您能找到解决方案吗?
  • 对我来说,这只发生在某些设备上,不依赖于具体的 android 版本,但屏幕上有软按钮

标签: android android-layout keyboard android-edittext soft-keyboard


【解决方案1】:

您在 .xml 中设置了“重力”,这就是问题所在。 但我不知道为什么。好像是android的bug,去掉那行就好了。

【讨论】:

  • 确实这“解决”了它,但现在我的文本不再居中。我必须承认我发现这不太可能,无论如何都试过了,它奏效了。谢谢!
  • 根据您的提示,我已执行以下操作:在第二次使用 TextEdit 时,将重力设置为无并将左填充设置为其宽度的一半,从而模拟居中的空文本控件的外观。添加了一个 TextListener 以检测何时输入文本并将 grvity 和 padding 设置回原始值。这对我有用,而且它是一个巨大的 hack
  • 奇怪但有效
  • 如果我们需要文本居中怎么办?
猜你喜欢
  • 2015-01-30
  • 2018-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-08-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多