我找了类似的问题,但最终无法解决我的问题
我的活动底部有 editText ,而 viewPager 上面有 listView 。
问题是当我关注editText甚至隐藏在横向中时, listView 被最小化。当我点击它聚焦的editText时,它会减少 Fragment的高度,包括listView。
尽管我的 viewPager 被约束性地附加到 editText 并且viewPager的 Fragment 高度设置为match_parent,但是有一个 listView 与底部 editText 之间存在巨大差距。
我在底部editText和listView之间唯一看到的是viewPager的Background。所以它实际上是片段的布局调整大小。
我注意到当我将editText的高度设置为常量值时问题就消失了。事实是我需要在wrap_content上使用它,因为我正在使用多行属性,因此我需要使用editText进行扩展。
完全疯狂的是两个元素之间的差距取决于editText的提示长度。在下面的屏幕截图中,它设置为“消息”,但如果我设置更长的提示,如“新消息”,差距将大得多!
以下是活动布局的一部分
<android.support.v4.view.ViewPager
android:id="@+id/viewPager"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@color/colorAccent"
app:layout_constraintBottom_toTopOf="@id/LayoutMsgBar"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/navigationBar" />
<android.support.constraint.ConstraintLayout
android:id="@+id/LayoutMsgBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/darkGrey"
android:focusableInTouchMode="true"
android:theme="@style/msgBar"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/viewPager">
<EditText
android:id="@+id/editTextMsg"
android:layout_width="0dip"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@android:color/transparent"
android:hint="@string/nv_msg"
android:inputType="textMultiLine|textCapSentences"
android:maxLength="2000"
android:maxLines="4"
android:paddingBottom="10dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingTop="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/sendButton"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toEndOf="@+id/moreButton"
app:layout_constraintTop_toTopOf="parent" />
和视图寻呼机调用的Fragment布局
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/messagesListView"
android:layout_width="match_parent"
android:layout_height="match_parent">
</ListView>
What I have before I swipe or click on the editText
What I get after click on editText then reduce it
我已将viewPager的背景颜色设置为橙色。它没有隐藏listView,它在它下面。
我的观点基本上是我的listView保持附加到bottomBar,所以对于editText
如果你有一个很棒的想法!
答案 0 :(得分:0)
好吧,我通过用线性布局替换我的底栏constraintLayout来解决它。 我没有得到它,约束是正确的,但是这有效。