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>