首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏全栈程序员必看

    Android中Textview文字设置不同颜色、下划线、加粗、超链接

    ); msp.setSpan(new TypefaceSpan("serif"), 2, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); / ); //正常 msp.setSpan(new StyleSpan(Typeface.BOLD), 20, 22, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //粗体 msp.setSpan(new StyleSpan(Typeface.ITALIC), 22, 24, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); / static Spanned fromHtml(String source) 从Html字符串中返回可显示的样式文本。 字符串中返回可显示的样式文本 static String toHtml(Spanned text) 将文本转换成Html。

    9.9K21编辑于 2021-12-23
  • 来自专栏Flutter入门到实战

    教你如何最快写出酷炫的dialog对话框

    ); ss1.setSpan(new ForegroundColorSpan(Color.BLACK), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); ss1.setSpan(new ForegroundColorSpan(Color.rgb(255,0,0)),1, 2, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); ss2.setSpan(new ForegroundColorSpan(Color.BLACK), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); ss3.setSpan(new ForegroundColorSpan(Color.BLACK), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); ss4.setSpan(new ForegroundColorSpan(Color.BLACK), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE

    93320发布于 2018-09-03
  • 来自专栏向治洪

    Android TextView中文字通过SpannableString来设置超链接、颜色、字体等属性

    );           msp.setSpan(new TypefaceSpan("serif"), 2, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);   //设置字体大小 (绝对值,单位:像素)          msp.setSpan(new AbsoluteSizeSpan(20), 4, 6, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);   );  //粗斜体 //设置下划线         msp.setSpan(new UnderlineSpan(), 27, 30, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE );   //设置删除线         msp.setSpan(new StrikethroughSpan(), 30, 33, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE //下标            msp.setSpan(new SuperscriptSpan(), 36, 37, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);   //上标

    2.2K90发布于 2018-01-30
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核 内存管理】分区伙伴分配器 ⑥ ( zone 结构体中水线控制相关成员 | 在 Ubuntu 中查看内存区域水位线 )

    文章目录 一、zone 结构体中水线控制相关成员 ( managed_pages | spanned_pages | present_pages ) 二、在 Ubuntu 中查看内存区域水位线 上一篇博客 区域水线水位 : managed_pages 成员 表示 伙伴分配器 管理的 物理页个数 ; 使用 如下 公式进行计算 : \rm zone\_end\_pfn - zone\_start\_pfn spanned_pages 成员 表示 内存区域 的 所有可用物理页 个数 , 包括 内存空洞 ; 使用 如下 公式进行计算 : \rm spanned\_pages - hole\_pages present_pages 成员 unsigned long managed_pages; unsigned long spanned_pages; unsigned long present_pages; ... } 源码路径 pages free 43834 min 12202 low 15252 high 18302 spanned

    2.9K30编辑于 2023-03-30
  • 来自专栏Android知识点总结

    Android控件之TextView

    ); //下划线 ssSeal.setSpan(new StrikethroughSpan(), 4,7, Spanned.SPAN_INCLUSIVE_INCLUSIVE); ); //字大小 ssSeal.setSpan(new RelativeSizeSpan(2f), 7, 9, Spanned.SPAN_INCLUSIVE_INCLUSIVE); //下划线 ssSeal.setSpan(new UnderlineSpan(), 9,13, Spanned.SPAN_INCLUSIVE_INCLUSIVE); return ssSeal mIdTv.getPaint().setAntiAlias(true);或 mIdTv.getPaint().setFlags(Paint.ANTI_ALIAS_FLAG); --- 9.添加HTML Spanned spanned = Html.fromHtml( "toly: link to" + "<a href=\"http://www.toly1994

    1.7K20发布于 2018-09-01
  • 来自专栏囍楽云博客

    textview设置字体大小-设置textview字体样式

    ); //绝对大小 sb1.setSpan(new AbsoluteSizeSpan(40), 2, 4, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //相对大小 // sb1.setSpan(new RelativeSizeSpan(40), 4, 5, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); sb1.setSpan(new AbsoluteSizeSpan (60), 5, sb1.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); mTextView6.setText(sb1); SpannableStringBuilder ); sb2.setSpan(new RelativeSizeSpan(0.5f),2,3,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); mTextView7.setText ); sb4.setSpan(new ScaleXSpan(0.5f), 4, 5, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); mTextView9.setText(sb4

    4.5K20编辑于 2022-12-26
  • 来自专栏移动开发专栏

    Android 服务协议隐私政策高亮可点击写法

    Toast.makeText(this@LoginActivity,"服务协议",Toast.LENGTH_SHORT).show() } }, 0, span.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ForegroundColorSpan(Color.parseColor("#D1894A")), 0, span.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE Toast.makeText(this@LoginActivity,"隐私政策",Toast.LENGTH_SHORT).show() } }, 0, span.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ForegroundColorSpan(Color.parseColor("#D1894A")), 0, span.length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE

    1.3K20编辑于 2022-06-10
  • 来自专栏Android知识点总结

    1-VIV-Android控件之TextView

    ); //下划线 ssSeal.setSpan(new StrikethroughSpan(), 4,7, Spanned.SPAN_INCLUSIVE_INCLUSIVE); ); //字大小 ssSeal.setSpan(new RelativeSizeSpan(2f), 7, 9, Spanned.SPAN_INCLUSIVE_INCLUSIVE); //下划线 ssSeal.setSpan(new UnderlineSpan(), 9,13, Spanned.SPAN_INCLUSIVE_INCLUSIVE); return ssSeal spanned = Html.fromHtml( "toly: link to" + "Endless "); mIdTv.setMovementMethod(LinkMovementMethod.getInstance());//激活链接 mIdTv.setText(spanned

    75260发布于 2018-09-29
  • 来自专栏韩曙亮的移动开发专栏

    【Linux 内核 内存管理】物理内存组织结构 ④ ( 内存区域 zone 简介 | zone 结构体源码分析 | zone 结构体源码 )

    1、watermark 成员 2、lowmem_reserve 成员 3、zone_pgdat 成员 4、pageset 成员 5、zone_start_pfn 成员 6、managed_pages、spanned_pages pages spanned by the zone, including * holes, which is calculated as: * spanned_pages = zone_end_pfn * * Locking rules: * * zone_start_pfn and spanned_pages are protected by span_seqlock. is the total pages spanned by the zone, including * holes, which is calculated as: * spanned_pages * * Locking rules: * * zone_start_pfn and spanned_pages are protected by span_seqlock.

    5K30编辑于 2023-03-30
  • 来自专栏向治洪

    过滤输入法的表情

    android.content.Context;   import android.text.InputFilter;   import android.text.SpannableString;   import android.text.Spanned  InputFilter() {   @Override public CharSequence filter(CharSequence source, int start, int end, Spanned                         buffer.append(c);                       }                   }   if (source instanceof Spanned                     SpannableString sp = new SpannableString(buffer);                       TextUtils.copySpansFrom((Spanned

    1.5K100发布于 2018-01-29
  • 来自专栏小陈飞砖

    Spannable 和 Editable、SpannableString 和 SpannableString

    Spanned(可附加标记的字符序列) ** * This is the interface for text that has markup objects attached to * ranges {@link Spannable} for mutable markup and {@link Editable} for * mutable text. */ public interface Spanned classes have mutable text; * see {@link Editable} for that. */ public interface Spannable extends Spanned

    46760编辑于 2022-06-25
  • 来自专栏Android群英传

    真·富文本编辑器的演进之路-Span开胃菜

    textString.setSpan(LineHeightSpan.Standard(90), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) ? Span的Flag有下面这些枚举: Spanned.SPAN_EXCLUSIVE_EXCLUSIVE:不包含两端start和end所在的端点,即(a,b) Spanned.SPAN_EXCLUSIVE_INCLUSIVE :不包含端start,但包含end所在的端点,即(a,b] Spanned.SPAN_INCLUSIVE_EXCLUSIVE:包含两端start,但不包含end所在的端点,即[a,b) Spanned.SPAN_INCLUSIVE_INCLUSIVE textString.setSpan(TextRoundSpan(3, 200), 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE) text.text = textString | Spanned.SPAN_PRIORITY) 或者使用Spannable.Factory()来进行设置。

    3.1K20发布于 2021-03-16
  • 来自专栏非著名程序员

    Android中如何实现图文混排

    Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用超链接标记文本 ss.setSpan(new URLSpan("tel:4155551212"), 2, 5, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); //用样式标记文本(斜体) ss.setSpan(new StyleSpan(Typeface.BOLD_ITALIC), 5, 7, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); //用删除线标记文本 ss.setSpan(new StrikethroughSpan(), 7, 10, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用下划线标记文本 ss.setSpan(new UnderlineSpan(), 10, 16, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //用颜色标记 ss.setSpan(new ForegroundColorSpan(Color.GREEN), 10, 13, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); //获取Drawable资源 Drawable

    1.7K90发布于 2018-02-02
  • 来自专栏Linux内核深入分析

    zone watermark水位控制

    先来看如下几个字段的含义 /* * spanned_pages is the total pages spanned by the zone, including * holes, which is calculated as: * spanned_pages = zone_end_pfn - zone_start_pfn; * * present_pages is physical pages existing within the zone, which * is calculated as: * present_pages = spanned_pages - absent_pages present_pages: 代表的是这个zone中可用的所有物理页,计算公式是:spanned_pages-hole_pages managed_pages: 代表的是通过buddy管理的所有可用的页 ,计算公式是:present_pages - reserved_pages 三者的关系是: spanned_pages > present_pages > managed_pages 可以看下我手上的机器的

    2K20发布于 2020-04-24
  • 来自专栏老欧说安卓

    Android开发笔记(六)可变字符串

    RelativeSizeSpan,加粗采用StyleSpan,代码如下: spanText.setSpan(new RelativeSizeSpan(1.5f) , 0, first_length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); spanText.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 0, first_length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ForegroundColorSpan,代码如下: spanText.setSpan(new RelativeSizeSpan(0.75f), first_length+1, second_length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); spanText.setSpan(new ForegroundColorSpan(Color.RED), first_length+1, second_length, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE myURLSpan = new MyURLSpan(url.getURL()); spanText.setSpan(myURLSpan, second_length+1, itemText.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE

    85140发布于 2019-01-18
  • 来自专栏Code

    Android中TextView文字设置不同的颜色

    Spanned.SPAN_INCLUSIVE_EXCLUSIVE 从起始下标到终了下标,包括起始下标 Spanned.SPAN_INCLUSIVE_INCLUSIVE 从起始下标到终了下标,同时包括起始下标和终了下标 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE 从起始下标到终了下标,但都不包括起始下标和终了下标 Spanned.SPAN_EXCLUSIVE_INCLUSIVE 从起始下标到终了下标

    11.5K20发布于 2019-08-07
  • 来自专栏即时通讯技术

    Android端IM应用中的@人功能实现:仿微博、QQ、微信,零入侵、高可扩展

    正如SpannableData所展现的一样,当spannedText()返回的是一个Spannable对象时,使用Spanned.SPAN_EXCLUSIVE_EXCLUSIVE作为flag。 当然,Spanned.SPAN_EXCLUSIVE_EXCLUSIVE并不具备完全的安全性。毕竟它不能阻止中间插入。这个事情得我们自己来做。那么,为了禁止中间插入,我们应该怎么做呢? 这样便能够实现把标签文本(spanned text)看作一个整体的思路。 if(text instanceofSpanned) {         Spanned sp = (Spanned) text;         Object[] spans = sp.getSpans (ImageSpan(LabelDrawable("@$spanned", color = Color.LTGRAY), spanned), 0, length-1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE

    2.7K30发布于 2018-12-23
  • 来自专栏非著名程序员

    【有人@我】Android中高亮变色显示文本中的关键字

    java.util.regex.Matcher; import java.util.regex.Pattern; import android.text.SpannableString; import android.text.Spanned int start = m.start(); int end = m.end(); s.setSpan(new ForegroundColorSpan(color), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE int start = m.start(); int end = m.end(); s.setSpan(new ForegroundColorSpan(color), start, end, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE

    2.4K90发布于 2018-02-02
  • 来自专栏该溜子的专栏

    【Android】用户登录界面设计

    ).show(); } }; 设置弹窗并显示 五:.setSpan() spannableString.setSpan(clickableSpan,7,13, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE 左闭右开区间 [start,end) 初始范围的规则 跟最后一个参数flags的区间没有关系 exclusive 包含 inclusive 不包含 (3)文本编辑后的区间范围 Spanned.SPAN_EXCLUSIVE_EXCLUSIVE (实操效果很难展示出来,略) Spanned.SPAN_EXCLUSIVE_EXCLUSIVE:前后都不包括 Spanned.SPAN_EXCLUSIVE_INCLUSIVE:前面不包括,后面包括 Spanned.SPAN_INCLUSIVE_EXCLUSIVE :前面包括,后面不包括 Spanned.SPAN_INCLUSIVE_INCLUSIVE:前后都包括 六:超链接响应 cbArgreement.setText(spannableString); spannableString.setSpan(clickableSpan,0,text.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); /**

    24400编辑于 2025-07-19
  • 来自专栏【Android开发基础】

    TextView设置下划线并拨打电话

    getString(R.string.standard_tips_phonenumber_for_user)); msp2.setSpan(new UnderlineSpan(), 0, 12, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE ); msp2.setSpan(new ForegroundColorSpan(Color.rgb(55,160,225)), 0, 12, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE

    50030编辑于 2023-02-10
领券