TextViewに箇条書き記号を追加するにはどうすればよいですか?


回答:


359

この効果を実現するには、適切な文字エンコーディングを使用する必要があります。あなたは試すことができます•


更新

明確にするために:setText("\u2022 Bullet");プログラムを使用して箇条書きを追加するために使用します。0x2022 = 8226


1
これは私を助けました。
ビカス

4
これが正解です。で弾丸を貼り付けるよりも正しい。
カイルクレッグ

2
@ベニー、プログラムでテキストを設定した場合、これは機能しません。textView.setText( "• hello");
Dwivedi Ji 2014

27
明確にするために:setText("\u2022 Bullet");プログラムを使用して箇条書きを追加するために使用します。 0x2022 = 8226
Diederik 2014

106
ここでは弾丸のこれらの異なるスタイルに文字コードは以下のとおりです。 • = \u2022, ● = \u25CF, ○ = \u25CB, ▪ = \u25AA, ■ = \u25A0, □ = \u25A1, ► = \u25BA
quent


27

コピーペースト: •。私は◄や►などの他の奇妙なキャラクターを使ってそれをやった。

編集: ここに例があります。二つButton下部のにはとがandroid:text="◄"あり"►"ます。


7
問題は、行が折り返されるときです。2行目をインデントしません
Bostone

4
水平方向の線形レイアウトを使用し、最初は "アイコンとスペース"のテキスト
ビュー

18

どこかで多分もっと良い解決策がありますが、これは私がやったことです。

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        >
        <TableRow>    
            <TextView
                android:layout_column="1"
                android:text="•"></TextView>
            <TextView
                android:layout_column="2"
                android:layout_width="wrap_content"
                android:text="First line"></TextView>
        </TableRow>
        <TableRow>    
            <TextView
                android:layout_column="1"
                android:text="•"></TextView>
            <TextView
                android:layout_column="2"
                android:layout_width="wrap_content"
                android:text="Second line"></TextView>
        </TableRow>
  </TableLayout>

それはあなたが望むように機能しますが、本当に回避策です。


9

Androidのドキュメントに記載されているBulletSpanを試すことができます。

SpannableString string = new SpannableString("Text with\nBullet point");
string.setSpan(new BulletSpan(40, color, 20), 10, 22, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

結果


API 28より前のバージョンでbulletRadiusプロパティを使用するのはどうですか?
ibrahimyilmaz

6

これは私がやったことです。

 <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="horizontal">

            <View
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:background="@drawable/circle"
                android:drawableStart="@drawable/ic_bullet_point" />

            <TextView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="10dp"
                android:text="Your text"
                android:textColor="#000000"
                android:textSize="14sp" />
        </LinearLayout>

そしてdrawbale / circle.xmlのコードは

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
  android:innerRadius="0dp"
  android:shape="ring"
  android:thickness="5dp"
  android:useLevel="false">

 <solid android:color="@color/black1" />

</shape>

4

Unicodeを使用すると簡単にできますが、弾丸の色を変更したい場合は、色付きの弾丸の画像を試し、ドローアブル左に設定して、うまくいきました。

<TextView     
    android:text="Hello bullet"
    android:drawableLeft="@drawable/bulleticon" >
</TextView>

0

androidは<ol>, <ul> or <li>html要素をサポートしていないので、私はこのようにする必要がありました

<string name="names"><![CDATA[<p><h2>List of Names:</h2></p><p>&#8226;name1<br />&#8226;name2<br /></p>]]></string>

カスタムスペースを維持したい場合は、 </pre> tag

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.