当在viewpager中加载包含Edittext的片段时,Edittext无法获得焦点。光标闪烁一次,焦点丢失。这是XML。
ViewPager布局:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="co.interacta.app.ui.FormInteractionFragment">
<android.support.v4.view.ViewPager
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</FrameLayout>
编辑文字所在的布局:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:background="@drawable/bg_yes_no_question"
>
<!-- TODO: Update blank fragment layout -->
<ImageView
android:id="@+id/image"
android:layout_width="match_parent"
android:layout_height="190dp"
android:layout_marginTop="32dp"
/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_marginTop="60dp"
android:layout_gravity="center_vertical">
<TextView android:id="@+id/question" android:layout_width="match_parent" android:layout_height="match_parent"
android:text="Question"
android:gravity="center"
android:layout_marginLeft="5dp" android:textSize="20sp" android:layout_marginBottom="15dp"
/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:text="Answer: "
android:textSize="15sp"
android:layout_marginBottom="5dp"
android:layout_marginLeft="15dp"
/>
<EditText
android:id="@+id/answer"
android:layout_width="match_parent"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:textColor="#000000"
android:textSize="20sp"
android:layout_height="wrap_content" />
</LinearLayout>
<Button
android:id="@+id/done"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Done"
android:layout_marginTop="5dp"
android:layout_gravity="center"
/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:layout_marginBottom="15dp"
android:orientation="vertical">
<include
android:id="@+id/indicator_view"
layout="@layout/indicator_questions"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="15dp"
/>
<co.interacta.app.widgets.FontTextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="@string/powered_by_interacta"
android:textSize="12sp"
app:fontName="open_sans_regular.ttf" />
</LinearLayout>
</FrameLayout>
答案 0 :(得分:0)
你只需要添加
活动清单中的 android:windowSoftInputMode="adjustPan"