11

これについて以前にさまざまな質問が寄せられたことは知っていますが、私の問題に対する答えが見つかりません。私は 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>

EditText フィールドは、親の LinearLayout 内、親の ScrollView 内にあります。画面上では問題ないように見えますが、編集テキスト フィールドの 7 行目を超えると、トラックボールを使用してテキスト フィールドに戻る必要があります。画面をスクロールすると、画面全体がスクロールします。誰でもヒントを教えてもらえますか?同様の質問に対してさまざまな提案を実装しようとしましたが、正しい答えが得られませんでした。ありがとう

4

1 に答える 1

12

@tozka がコメントで述べているように、レイアウト ファイルでは、 のandroid:minLines=""代わりに: を指定しますandroid:lines=""

Java の場合:editText.setMinLines(int)の代わりにeditText.setLines(int).

editText.SetMinLines(int)の代わりにC# (Mono for Android)でeditText.SetLines(int)

Android ドキュメントから:

public void setMinLines (int minlines)

TextView の高さを少なくともこの行数にします。この値を設定すると、他の (最小) 高さ設定がオーバーライドされます。

于 2013-01-06T21:49:19.800 に答える