1

コンパイル時に複数の行を使用する非常に大きな文字列を持つ TextView があります。各行にある文字列要素または文字の数を見つける方法を見つけようとしています。

TextView の XML

        <TextView
        android:id="@+id/textViewSentenceP"
        android:layout_gravity="center"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.00"
        android:gravity="center"
        android:singleLine="false"
        android:padding="25dip" 
        android:scrollHorizontally="false"
        android:textColor="#FFFFFFFF"
        android:maxLines = "5"
        android:scrollbars = "vertical"
        android:textSize="12sp" />

私のコードは完全に機能します。各行の要素数を見つける方法を知る必要があります。また、これが見つからない場合、どの要素がテキスト行の最後にあるか、またはどの要素が次のテキスト行を開始するかを判断できれば、それも良い答えになります。ありがとうございました!!

4

1 に答える 1

2

気にせず頂きました!!

getLineStart メソッドを使用すると問題が解決しました! 私と同様の問題を抱えていた人は、このコードを試してみてください。注: getLineStart() は、その特定の行に到達するまで、スペースを含むすべての行からすべての文字を順番に読み取ります。

     int curLine = tv.getLayout().getLineStart(0);
     int nextLine = tv.getLayout().getLineStart(1);
     int difference = nextLine-curLine;

差の値は、curLine 上の文字数 (スペースを含む) になります。

于 2012-10-08T02:11:38.023 に答える