我想在textview中顯示一個項目符號列表。我可以使用子彈頭彈,但子彈不是很有吸引力,似乎也沒有定製它的方法。我想爲我的項目符號列表使用默認的項目符號(•)。有沒有使用LeadingMarginSpan獲得我想要的效果的方法?基本上,如果行以子彈開頭,我希望它與左邊對齊,但是如果行太長以至於它斷開,那麼下一行的文本(斷開的文本)應該縮進到與文本之後的文本相同的級別子彈點。Android:使用LeadingMarginSpan在textview中顯示項目符號列表?
* for example
instead of this
* for example
should look like this
我當前的代碼:
String[] bulletpoint = {some array of strings};
CharSequence allText = "";
for (int i = 0; i < bulletpoint.length; i++) {
String text = bulletpoint[i];
SpannableString s = new SpannableString(text + "\n");
s.setSpan(new LeadingMarginSpan(BulletSpan.STANDARD_GAP_WIDTH) {
@Override
public int getLeadingMargin(boolean first) {
return 0;
}
@Override
public void drawLeadingMargin(Canvas c, Paint p, int x, int dir, int top, int baseline, int bottom, CharSequence text, int start, int end, boolean first, Layout layout) {
}
}, 0, text.length(), 0);
allText = TextUtils.concat(allText, s);
}
textview.settext(allText);