1

我有一个多行 EditText 和一个按钮,该按钮会显示一个持久的底部工作表(模式不会在这里做)。

底页基本上是一个LinearLayout,变成了一个appcompat底页,有

app:layout_behavior="@string/bottom_sheet_behavior"

在 XML 中。

按下按钮将其显示如下:

 View bottomSheet = context.findViewById(R.id._bottom_sheet);

 BottomSheetBehavior behavior = BottomSheetBehavior.from(bottomSheet);

 behavior.setState(BottomSheetBehavior.STATE_EXPANDED);

现在,我知道这是预期的行为,底部表涵盖了那里的任何内容(我不想使其成为模态,因为 EditText 需要保留其焦点和选择等),但我的问题是:

有没有办法让底部视图调整EditText的大小,所以总是显示“整体”?就像你展示键盘一样。

(已编辑:原始问题将允许平移,这将隐藏视图的顶部)

或者我最好把它变成一个“常规”视图,然后通过点击按钮让它“出现”?

感谢您的洞察力。

编辑:我还需要提一下,Bottomsheet 是在主要活动上定义的,而 EditText 是在片段中的 ViewPager 上(这使得调整大小不那么简单)

4

1 回答 1

0

事实证明,问题并不是真正的问题,而是解决问题的错误方法。有EditText问题的本身放置在ViewPager. 调整Viewpager自身的大小会调整其中的所有内容,并正确调整EditText.

感谢上面 m vai 的评论将我引导到这个解决方案。

于 2016-06-02T10:26:24.377 回答