テキストビューを複数行にしたい。
画像: http://s13.postimg.org/y0q78e1yv/Capture.png
しかし、どうすればテキストを複数行にすることができますか?
どの属性ですか?
TextView txt_Tweet = (TextView) View.inflate(this, R.layout.special_textview, null);
special_textview
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_height="wrap_content"
Android:layout_width="wrap_content"
Android:paddingLeft="20dp"
Android:paddingRight="20dp"
Android:paddingBottom="5dp"
Android:inputType="textMultiLine"
Android:scrollHorizontally="false">
</TextView>
同じテキストビューで異なるテキストに表示したいですか?その場合は、次のような2つのテキストビューを使用します。
<LinearLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:orientation="vertical">
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="@string/hello_world" />
<TextView
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:text="@string/hello_world" />
</LinearLayout>
リモートAndroid:inputType = "textMultiLine"、これはEditTextAtributeです。
同じテキストビューで複数の行を使用するだけの場合:
Android:maxLines="5"//optional to set max numbers of lines
Android:minLines="2"//optional to set min numbers of lines
Android:singleLine="false"//set false to allow multiple line
Android:lines="2" //or more
使用するこのテキストビューがListViewに属している場合は、次を使用します。
Android.R.layout.simple_list_item_2
作業する2つのテキストビューが表示されます。
私は次のようにそれをしました:
tv.setElegantTextHeight(true);
tv.setInputType(InputType.TYPE_TEXT_FLAG_MULTI_LINE);
tv.setSingleLine(false);
最初に「_\n
_」をそのHtmlと同等の「_<br>
_」に置き換えてから、文字列でHtml.fromHtml()
を呼び出します。以下の手順に従ってください。
_String text= model.getMessageBody().toString().replace("\n", "<br>")
textView.setText(Html.fromHtml(Html.fromHtml(text).toString()))
_
これは完全に機能します。
答えに追加する:順序が重要です!
必ずsetInputType before setMinLinesを呼び出してください!
あなたはこのようにそれを行うことができます:
txt_Tweet.setSingleLine(false);
txt_Tweet.setImeOptions(EditorInfo.IME_FLAG_NO_ENTER_ACTION);
レイアウトで
Android:lines="8" //Total Lines prior display
Android:minLines="6" //Minimum lines
Android:maxLines="10" //Maximum Lines
TextViewでは、「singleLine」属性をfalseに設定する必要があります。また、テキストを折り返すように「ellipsize」を設定する必要があります。
Android:singleLine="false"
Android:ellipsize="end"