2

テキストの切り捨てを処理する最善の方法についての短い質問を次に示します。TextView によって文字列が切り取られたときに、文字列全体をユーザーに表示する良い方法を知っていますか?

どのサイズの画面でも、TextView に設定された長い文字列のテキストが途切れる可能性があります。この問題は、アプリが複数のサイズ、特に通常サイズの画面と大きいサイズの画面をサポートしている場合に顕著になります。

良い提案の 1 つは、テキスト ビューをスクロール可能にすることです。その提案に関する私の問題は、4 つの方向すべてでスワイプ ナビゲーションの相互作用を計画していて、テキスト ビューのスクロールが複雑になっていることです。今日の Android オフィス アワーでこの質問を提起しました。特に既存のソリューションに基づく提案は大歓迎です。前もって感謝します...

4

3 に答える 3

0

テキストサイズを対応する画面サイズに調整することを提案する、完璧なガイドラインがあります。ここで見つけることができます。

また、テキスト ビューで使用できる属性もあります。

  • 小さな
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Small Text"
android:textAppearance="?android:attr/textAppearanceSmall" />
  • 中くらい
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Medium Text"
android:textAppearance="?android:attr/textAppearanceMedium" />
  • 大きい
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
于 2012-05-23T22:40:12.880 に答える
0

この問題を処理する 1 つの方法は、コードを追加せずにスクロール可能にするプロパティを textview に追加することでした。

android:lines="3"
android:textIsSelectable="true" 
android:fadeScrollbars="false"

これは、営業時間中に Android Dev Relations チームのメンバーによって提案されました。ただし、テストしたところ、Android バージョン 2.2.2 でスクロールが機能しませんでした。私の新しい解決策は、テキストビューのクリック可能を宣言し、onClick コールバックを使用してダイアログを開くことです。

そのため、テキストを省略して (スクロール タグはもう使用しません)、テキストが途切れていることをユーザーに明確に示します。xml は次のとおりです。

android:lines="3"
android:clickable="true"
android:onClick="showDef"
android:ellipsize="start"
android:isScrollContainer="false"

これが showDef メソッドです。

public void showDef(View v) {
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("same text as was set in the text view")
        .setCancelable(false)
        .setNegativeButton("Clear", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface dialog, int id) {
                dialog.cancel();
           }
        });

AlertDialog alert = builder.create();
alert.show()

テキストビューを含むビューグループのサイズが固定されている場合、単純なスクロールよりもこのソリューションが気に入っています。それがあなたにとってもうまくいくことを願っています。

于 2012-05-30T19:32:54.150 に答える
0

これを使用して、テキストを切り捨てることができます。

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="This is your text"
android:ellipsize="marquee" android:lines="1 />
于 2012-05-23T23:08:23.017 に答える