1
当我把Fragment
其中包含EditText
在ViewPager
我正面临一个视图混合问题。视图越来越混合EditText焦点在片段内ViewPager
你可以在image_1中看到我的实际布局设计。案例1:我将Fragment
放在ViewPager
的内部,并在布局中点击第一个EditText
来输入内容。但结果是image_2。所有View
都因为没有足够的空间来容纳所有的View
而变得混杂。但是关于android的实际行为,布局中的所有Views
都应该向上移动,并将焦点集中在当前选中的EditText
。案例2:我把Fragment
直接放到Activity
而没有ViewPager
。我尝试了同样的事情(image_3)。我在这里得到了所需的android行为。
1)为什么会这样?
2)我该如何解决这个问题?
IMAGE_1
IMAGE_2
IMAGE_3
我的布局代码:
<?xml version="1.0" encoding="utf-8"?>
<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"
android:background="@drawable/container_dropshadow" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_margin="@dimen/content_margin"
android:background="@color/dark_background" >
<Button
android:id="@+id/sendButton"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:gravity="center_horizontal"
android:onClick="send"
android:text="@string/send" />
<EditText
android:id="@+id/descriptionEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/sendButton"
android:hint="@string/description"
android:inputType="textMultiLine|textNoSuggestions"
android:maxLength="500" />
<EditText
android:id="@+id/departmentEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/descriptionEditText"
android:hint="Department"
android:inputType="textNoSuggestions"
android:singleLine="true" />
<EditText
android:id="@+id/subjectEditText"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/departmentEditText"
android:hint="Subject"
android:inputType="textNoSuggestions"
android:singleLine="true" >
<requestFocus />
</EditText>
<LinearLayout
android:id="@+id/selectAFileLinearLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/subjectEditText"
android:layout_margin="8dp"
android:background="@drawable/bg_browse"
android:gravity="center_horizontal|center_vertical"
android:orientation="horizontal" >
<TextView
android:id="@+id/fileTextView"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="4dp"
android:layout_weight="6"
android:gravity="center"
android:padding="2dp"
android:text="Select a file"
android:textStyle="italic" />
<Button
android:id="@+id/browseFileButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:onClick="getFile"
android:text="..." />
</LinearLayout>
<TextView
android:id="@+id/messageTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/selectAFileLinearLayout"
android:layout_marginBottom="@dimen/upload_file_title_margin_bottom"
android:gravity="center_horizontal"
android:text="@string/upload_files_message"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="#ffffff"
android:textSize="@dimen/heading_font_size" />
</RelativeLayout>
</FrameLayout>