使EditText在填充时增长

ado*_*tyd 11 xml android android-layout android-edittext

我之前已经知道有关此问题的各种问题,但我找不到我的问题的答案.我正在开发一个Android应用程序,我希望EditText字段在用户输入时扩展.我希望它首先是最小尺寸,如果用户输入的数量超过最小允许值,则扩展.到目前为止,这是我的代码:

<ScrollView
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:fillViewport="true" >

    <linearLayout
        android:layout_height="match_parent"
        android:layout_width="wrap_content"
        android:orientation="vertical"
        android:padding="5dp" >

        <linearLayout>
            ...content...
        </linearLayout>

        <linearLayout>
            ...content...
        </linearLayout>

        <EditText 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textMultiLine"
        android:lines="7"
        android:gravity="top" />

    </linearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)

EditText字段位于父级ScrollView内的父linearLayout内.它在屏幕上看起来很好但是当我在编辑文本字段中超过第7行时,我必须使用轨迹球返回文本字段.滚动屏幕会滚动整个屏幕.谁能给我一些提示?我尝试对类似的问题实施不同的建议,但没有一个给我正确的答案.谢谢

Rya*_*man 12

正如@tozka在评论中所述,在布局文件中,指定:android:minLines=""而不是android:lines="".

在Java中:editText.setMinLines(int)而不是editText.setLines(int).

在C#(Mono for Android)editText.SetMinLines(int)而不是editText.SetLines(int).

来自Android文档:

public void setMinLines (int minlines)

使TextView至少有这么多行.设置此值将覆盖任何其他(最小)高度设置.