【发布时间】:2014-12-10 20:49:19
【问题描述】:
我在LinearLayout 里面有一堆EditText 在ScrollView 里面。当我点击其中一个时,软键盘正常出现,我的EditText 出现焦点。但是当我输入时,文本没有显示出来。甚至没有显示光标。当我点击另一个EditText 或应进行可见更改(添加视图)的按钮时,或单击键盘上的下一步时,视觉上没有任何变化。但是一旦我关闭键盘(使用后退按钮或以编程方式),我终于可以看到变化:出现键入的文本并选择了所需的EditText。
好像一切正常,只有屏幕被冻结,直到我关闭软输入,然后我才能看到进度。
为什么会发生这种情况,我该如何解决? 以编程方式关闭键盘无法通过,因为我需要键盘上的 Next 按钮才能工作,并且不断打开/关闭使我的 UI 看起来很混乱。
我的EditText都是这样的,只是ID和Hint不同而已。
<EditText
android:id="@+id/dataFullName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10"
android:focusable="true"
android:focusableInTouchMode="true"
android:hint="Personal name"
android:inputType="textNoSuggestions|textPersonName|textVisiblePassword"
android:textColor="#FFFFFF" />
这是ScrollView 拿着LinearLayout 拿着我的EditText
<ScrollView
android:id="@+id/generalsScrollView"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<!-- my EditText's here -->
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:text="Additional information:"
android:focusable="true"
android:focusableInTouchMode="true"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@android:color/white"
android:textSize="@dimen/additional_text" />
<LinearLayout
android:id="@+id/generalsContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/additional_margin"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:id="@+id/generalsAdder"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<Button
android:id="@+id/newGeneralButton"
android:layout_width="96dp"
android:layout_height="32dp"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:background="@drawable/bttn_bg"
android:onClick="newGeneralButtonPressed"
android:text="Add"
android:textColor="@android:color/white"
android:textColorHint="@android:color/white"
android:textColorLink="@android:color/white" />
</LinearLayout>
</LinearLayout>
</ScrollView>
【问题讨论】:
-
感谢您在我面前面对这个问题并提出问题和答案。让我试试你的方法..
标签: android android-layout keyboard android-edittext