ScrollView中的EditText向上增长

时间:2017-05-30 01:37:05

标签: android android-layout android-edittext

Demo

具有以下布局

<NestedScrollView>
    <LinearLayout>
        <TextView/>
        <EditText/>
    <LinearLayout/>
</NestedScrollView>

此布局全部包含在另一个ScrollView中,这就是我使用NestedScrollView的原因。

EditText是多行的,具有固定的minHeight。目前,如果超过高度限制,EditText将增长,NestedScrollView将适应增长。

我希望将此EditText更改为向上而不是向下。我尝试了几件事,但NestedScrollView没有像预期的那样处理向上增长。

非常感谢任何帮助:)

2 个答案:

答案 0 :(得分:0)

如果我理解你要做的正确,请试一试。

<android.support.v4.widget.NestedScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <RelativeLayout
        android:layout_centerInParent="true"
        android:orientation="vertical"
        android:layout_width="wrap_content"
        android:layout_height="200dip">

        <EditText
            android:layout_alignParentBottom="true"
            android:text="Put something really long here..."
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

    </RelativeLayout>

</android.support.v4.widget.NestedScrollView>

centerInParent并不是真正相关的,只是为了表明它所处的位置并不重要。

答案 1 :(得分:0)

感觉就像你想要实现的是一个可滚动的edittext,焦点总是在底部。所以也许你可以尝试给你的edittext一个TextWatcher,并在文本改变时强制滚动到底部。

将以下内容添加到TextWatcher回调中,看看是否是您想要的。

nestedScrollView.postDelayed(new Runnable() {
    @Override
    public void run() {
        nestedScrollView.fullScroll(ScrollView.FOCUS_DOWN);
    }
});