android span相关

引用一下:

https://www.jianshu.com/p/14f4d307df1e

https://blog.csdn.net/lou_liang/article/details/79066912

项目国际化中,最大的问题,国际化文案的问题,尤其是android端和ios端文案对不齐的问题,所以,一个项目,要是一开始就不排除有国际化的需求,就最好统一文案的命名,但是ios不像android一样支持string中的标签富文本语言,为了达到文案统一的目的,只能用代码实现富文本效果。

代码:

/**
 * Created by Thinkpad on 2018/6/22 16:38.
 *
 * @describe sb IOS不支持标签语言富文本,特写这个类代码实现富文本效果,以便于文案资源统一
 */

public class StringSpanUtilNew {

    //特殊标识符代替占位符
    private static final String TAG = "※※※※※";

    /**
     * 解析string添加ImageSpan
     * */
    public static SpannableStringBuilder buildDrawableSpan(Context context, @StringRes int stringId, @DrawableRes int... drawableId) {
        SpannableString[] spans = new SpannableString[drawableId.length];
        for(int i = 0;i

调用:

tv.setText(StringSpanUtilNew.buildDrawableSpan(this,
                R.string.tips,
                R.mipmap.ic_launcher,
                R.mipmap.ic_launcher));



你可能感兴趣的:(android开发)