import android.graphics.Canvas;import android.graphics.Paint;import android.text.Layout;import android.text.Spanned;import android.text.style.LeadingMarginSpan;import android.util.Log;public class ListItemSpan implements LeadingMarginSpan {  private final int mNumber;  private static final int BULLET_RADIUS = 3;  private static final int NUMBER_RADIUS = 10;  //Gap should be about 1em  public static final int STANDARD_GAP_WIDTH = 30;  public ListItemSpan() {      mNumber = -1;  }  public ListItemSpan(int number) {      mNumber = number;  }    public int getNumber() {    return this.mNumber;  }  public int getLeadingMargin(boolean first) {        if (!first) {      return 0;    }          if (mNumber != -1) {          return 2 * NUMBER_RADIUS + STANDARD_GAP_WIDTH;      } else {          return 2 * BULLET_RADIUS + STANDARD_GAP_WIDTH;      }  }  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 l) {          if (((Spanned) text).getSpanStart(this) == start) {          Paint.Style style = p.getStyle();          p.setStyle(Paint.Style.FILL);          if (mNumber != -1) {              c.drawText(mNumber + ".",                   x + dir,                   baseline, p);                        } else {              c.drawText("\u2022", x + dir, baseline, p);          }          p.setStyle(style);      }  }}


-- 源代码引用自 HtmlCleaner Android


======

最近在做Android上的富文本编辑器。

有朋友问到

Android 里面有内置的BulletSpan 

那带有数字的 number list

应该怎么做呢?


其实如果不会自己写Span

耐心Google 一定能得到相关代码

我借花献佛

把Html Cleaner的代码贴在这里

供大家参考


更多相关文章

  1. Android(安卓)jni的调用过程JNI_OnLoad(),利用Android(安卓)NDK
  2. [android与open source不得不说的事]Android真是开源?揭露你不愿
  3. 使用android快速开发框架afinal 开发android应用程序
  4. [android与open source不得不说的事]Android真是开源?揭露你不愿
  5. android之NFC基础技术分享
  6. 对Android及移动互联网的大局观看法!
  7. 对Android及移动互联网的大局观看法!
  8. android socket通信
  9. android studio 使用NDK和swig编译c++示例

随机推荐

  1. Android获取手机方向
  2. Android(安卓)监听EditText文本输入 Edit
  3. 什么是Dalvik【摘】
  4. Android(安卓).9图片使用报错...报错:AAP
  5. Android(安卓)Transition(Android过渡动画
  6. android 获取.thumbnail文件下的小图标
  7. Android——NDK下载提示缺少toolchains问
  8. Android--用Pull解析器将对象解析成xml文
  9. 2011.07.05(3)——— android PopupWindo
  10. ImageView的scaletype属性