我有Activity
,其中显示了某个人的详细联系信息。它包含CordinatorLayout(包含标题),ViewPager
以及TabLayout
。
其中一个片段底部包含EditText
,它包含在ViewPager中。
我使用以下主题进行此活动。 `
<style name="ToolbarAppThemeV4WithoutActionBar" parent="ToolbarAppThemeV4">
<item name="preferenceTheme">@style/PreferenceThemeOverlay</item>
<item name="colorPrimary">@color/colorPrimaryDesignV4</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:textColorPrimary">@color/color_v4_primary</item>
<item name="android:actionMenuTextColor">@color/white</item>
<item name="android:textColorSecondary">@color/color_v4_secondary</item>
<item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
<item name="alertDialogTheme">@style/Theme.AppCompat.Light.Dialog</item>
<item name="windowActionModeOverlay">true</item>
<item name="actionModeBackground">@color/color_multiselectTopBarbackground</item>
<item name="actionModeCloseDrawable">@drawable/in_ic_back_white</item>
<item name="actionModeStyle">@style/SomeStyle</item>
<item name="popupMenuStyle">@style/PopupmenuV4</item>
<item name="colorAccent">@color/colorPrimaryDesignV4</item>
<item name="android:windowTranslucentStatus">true</item>
<item name="android:actionOverflowButtonStyle">@style/MyActionButtonOverflow</item>
</style>
`
我试图使用android:windowSoftInputMode =&#34; adjustPan&#34;和&#34; adjustResize&#34;和所有可能的组合,但它没有正确显示。
请假设ViewPager中显示以下片段屏幕。 实际结果:
预期结果:
任何人都可以帮助我吗?我在manifest中的活动windowSoftInputMode中尝试了所有可能的组合。但没有任何效果。
请注意,如果我在不同的活动中使用相同的片段,它正在工作。试图使用相同的主题,但它不适用于此活动。
是否与ViewPager,Fragment,Cordinator Layout有关?请帮助我。
包含EditText输入字段的XML布局: `
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@color/white"
app:contentInsetLeft="0dp"
app:contentInsetStart="0dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/toolbar_back"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_centerVertical="true"
android:layout_marginLeft="4dp"
android:layout_marginStart="4dp"
android:background="?android:attr/actionBarItemBackground"
android:scaleType="center"
android:src="@drawable/in_ic_back_red" />
<TextView
android:id="@+id/comments_toolbar_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="8dp"
android:layout_marginStart="8dp"
android:layout_toEndOf="@+id/toolbar_back"
android:layout_toRightOf="@+id/toolbar_back"
android:textColor="@color/colorPrimaryDesignV4"
android:textSize="@dimen/font_size_text_medium" />
<View
style="@style/HorizontalDividerV4"
android:layout_alignParentBottom="true" />
</RelativeLayout>
</android.support.v7.widget.Toolbar>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_above="@+id/bottom_bar"
android:layout_below="@+id/toolbar">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="gone"
tools:visibility="visible">
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:indeterminate="true" />
</RelativeLayout>
<FrameLayout
android:id="@+id/master_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white">
<!--contains loader, error or empty states-->
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" />
</ScrollView>
<android.support.v7.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="match_parent" />
<android.support.design.widget.CoordinatorLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
android:layout_margin="8dp"
android:orientation="vertical"
android:padding="3dp"
android:scaleType="centerInside">
<RelativeLayout
android:id="@+id/fab"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginBottom="5dp"
android:layout_marginEnd="5dp"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:layout_marginStart="5dp"
android:layout_marginTop="12dp"
android:background="@drawable/rounded_circle_fab"
android:elevation="3dp">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:src="@drawable/in_ic_img_down_red_svg" />
</RelativeLayout>
<TextView
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_gravity="center_horizontal"
android:background="@drawable/rounded_circle_green"
android:elevation="3dp"
android:foregroundGravity="top"
android:gravity="center"
android:textColor="@color/white"
android:textSize="@dimen/font_size_text"
android:textStyle="bold"
android:visibility="gone"
app:layout_anchor="@id/fab"
app:layout_anchorGravity="top|center_horizontal"
tools:text="4"
tools:visibility="visible" />
</android.support.design.widget.CoordinatorLayout>
</FrameLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:visibility="gone"
tools:visibility="visible">
<ProgressBar
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="10dp"
android:indeterminate="true" />
</RelativeLayout>
</RelativeLayout>
<FrameLayout
android:id="@+id/bottom_bar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="@color/white"
android:paddingTop="6dp">
<View style="@style/HorizontalDividerV4" />
<RelativeLayout
android:id="@+id/actions_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="1dp"
android:background="@color/white">
<ViewFlipper
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="center"/>
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="centerInside"/>
</ViewFlipper>
<View
android:id="@+id/vertical_divider"
android:layout_width="1dp"
android:layout_height="36dp"
android:layout_centerVertical="true"
android:background="@color/color_divider_v4" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginBottom="8dp"
android:layout_marginLeft="8dp"
android:layout_marginStart="8dp"
android:layout_marginTop="8dp"
android:background="@color/white"
android:inputType="textMultiLine|textAutoCorrect|textCapSentences"
android:maxLines="3"
android:minLines="1" />
<ViewFlipper
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true">
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="centerInside"/>
<ImageView
android:layout_width="48dp"
android:layout_height="48dp"
android:scaleType="centerInside" />
</ViewFlipper>
<View
android:layout_width="8dp"
android:layout_height="8dp"
android:layout_alignParentEnd="true"
android:layout_alignParentRight="true"
android:layout_margin="6dp"
android:background="@drawable/rounded_circle_green"
android:visibility="gone"
tools:visibility="visible" />
</RelativeLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="48dp"
android:layout_marginTop="1dp"
android:background="@color/light_green_v4_bg"
android:gravity="center"
android:visibility="gone"
tools:visibility="gone">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/color_v4_secondary"
android:textSize="@dimen/font_size_text"/>
</LinearLayout>
</FrameLayout>
</RelativeLayout>`
答案 0 :(得分:1)
android:windowSoftInputMode="adjustPan
就是这样工作的。你需要的是android:windowSoftInputMode="adjustResize"
。
尝试在片段中在运行时设置它并根据需要进行更改。
getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
答案 1 :(得分:0)
尝试:
\n