当前位置: 首页 > news >正文

做中医药网站有前景吗十大在线编程网站

做中医药网站有前景吗,十大在线编程网站,上海小程序网站开发公司,制作音乐排行榜html5android TextView 实现富文本显示#xff0c;实现抖音直播间公屏消息案例 使用#xff1a; val tvContent: TextView helper.getView(R.id.tvContent)//自己根据UI业务要求#xff0c;可以控制 图标显示 大小val levelLabel MyImgLabel( bitmap 自己业务上的bitmap )va…android TextView 实现富文本显示实现抖音直播间公屏消息案例 使用 val tvContent: TextView helper.getView(R.id.tvContent)//自己根据UI业务要求可以控制 图标显示 大小val levelLabel MyImgLabel( bitmap 自己业务上的bitmap )val labelNickName MyLabel(title 昵称,color 自己给个颜色,myLabelClick object : MyLabelClick {override fun click() {//点击了昵称事件}})val labelContent MyLabel(title 消息内容,color 自己给个颜色)tvContent.setMySpannable(levelLabel, labelNickName, labelContent)//如果需要显示多个 图标 imgLabelxxx 是 MyImgLabel//MyLabel 与 MyImgLabel 摆放位置是根据自己的业务需求 摆放的这只是个例子 tvContent.setMySpannable(levelLabel, labelNickName, imgLabelxxx,labelContent,imgLabelxxx) 代码 /*** 点击事件*/ interface MyLabelClick{fun click() } 文本标签  open class MyLabel(var title:String,var textStyleIsBold:Boolean? false, //字体是否加粗ColorInt var color:Int,var myLabelClick: MyLabelClick?null ) 图标标签 class MyImgLabel(var bitmap:Bitmap,var imgLabelClick: MyLabelClick? null ) : MyLabel(title level, color 0, myLabelClick imgLabelClick)自定义 ImageSpan  class CenteredImageSpan : ImageSpan {constructor(context: Context, drawableRes: Int) : super(context, drawableRes) {}constructor(context: Context, bitmap: Bitmap) : super(context, bitmap) {}override fun draw(NonNull canvas: Canvas, text: CharSequence?,start: Int, end: Int, x: Float,top: Int, y: Int, bottom: Int, NonNull paint: Paint) {val b: Drawable getDrawable()val fm: Paint.FontMetricsInt paint.getFontMetricsInt()val transY: Int (y fm.descent y fm.ascent) / 2 - b.getBounds().bottom / 2 //计算y方向的位移canvas.save()canvas.translate(x, transY.toFloat()) //绘制图片位移一段距离b.draw(canvas)canvas.restore()} } 代码块 fun MyLabel.setSpannableColorAndClick(spannableString: SpannableString, myLabel: MyLabel, startIndex:Int, endIndex:Int){spannableString.setSpan(object: ClickableSpan(){override fun onClick(widget: View) {LogUtils.d(点击事件)myLabel.myLabelClick?.click()}override fun updateDrawState(ds: TextPaint) {super.updateDrawState(ds)ds.color myLabel.color//取消默认的下划线ds.isUnderlineText false}},startIndex,endIndex, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE)}fun TextView.setMySpannable(spannableString: SpannableString){text spannableString//中途遇到点击后字体显示高亮取消高亮highlightColor Color.parseColor(#00000000)//最后设置可点击必须实现否则只能显示样式无法实现点击效果movementMethod LinkMovementMethod.getInstance() }fun TextView.setMySpannable(vararg myLabels: MyLabel?){text getMySpannableString(context,*myLabels)//中途遇到点击后字体显示高亮取消高亮highlightColor Color.parseColor(#00000000)//最后设置可点击必须实现否则只能显示样式无法实现点击效果movementMethod LinkMovementMethod.getInstance() }private fun getMySpannableString(context: Context,vararg myLabels: MyLabel?):SpannableString{//step1:得到全部显示的内容var msgContent StringBuffer()val indexMap:MutableMapInt,Int mutableMapOf()var startIndex 0myLabels?.forEachIndexed { index, myLabel -if (myLabel! null){msgContent.append(myLabel.title)indexMap[index] startIndexstartIndex myLabel.title.length}}val spannableString SpannableString(msgContent)log(spannableString:${spannableString})//step2:设置颜色以及点击事件myLabels?.forEachIndexed { index, myLabel -if (myLabel! null){val startIndex indexMap[index]val endIndex startIndex?.plus(myLabel.title.length)if (myLabel is MyImgLabel){//要让图片替代指定的文字就要用ImageSpanval imageSpan myLabel.bitmap?.let {CenteredImageSpan(context, it)}spannableString.setSpan(imageSpan, startIndex!!, endIndex!!, ImageSpan.ALIGN_BASELINE)}else{if (myLabel.textStyleIsBold true){val styleSpan StyleSpan(Typeface.BOLD)spannableString.setSpan(styleSpan,startIndex!!, endIndex!!,Spanned.SPAN_INCLUSIVE_EXCLUSIVE)}}myLabel.setSpannableColorAndClick(spannableString spannableString,myLabel myLabel,startIndex startIndex!!,endIndex endIndex!!)}}return spannableString }
http://www.dnsts.com.cn/news/209078.html

相关文章:

  • 什么是网站的二级目录顺的网站建设案例
  • 网站漏洞怎么修复做cpa推广用哪种网站好
  • 济南做网站公司哪家好网站内页怎么做301定向
  • 网站被k原因爱有声小说网站捡个校花做老婆
  • 网络系统部青岛百度网站排名优化
  • 帮朋友做网站的坑电子商务考研可以考什么专业
  • 天津优化网站哪家好用重庆网站开发企业
  • 3d建模培训学校seo网站推广软件排名
  • 网站登录按钮怎么做网站制作建设有哪些
  • 网站开发的前后端是什么贵州两学一做专题网站
  • 贵州企业网站建设策划代做机械设计的网站
  • aspx网站html静态化怎么做自动制作视频的软件
  • 官方网站下载钉钉游戏制作软件有哪些
  • 南阳网站搭建如何注册网站的名字
  • 专门做电商的网站有哪些做电影网站合法吗
  • 做网站公司 信科网络做网站前端难吗
  • 这样制作公司网站厦门营销网站制作
  • 网站建设 网页设计 的文章香精香料网论坛
  • 视频网站建设 方案设计网站设计公司
  • 毫州网站建设哈尔滨多语言网站建设
  • 网站开发采用了哪些技术无锡市工程造价信息网
  • 企业网站前台模板建设局是做什么的
  • 扬州建设工程信息网站推广平台
  • 杭州画廊网站建设手机网站建站软件
  • 萍乡网站建设哪家公司好外贸常用社交网站有哪些
  • 天津智能网站建设方案图片加文字在线制作
  • 颍上县建设局网站海南营销型网站建设
  • 贵州网站建设套餐wordpress导出数据库重装
  • 网站后台上传图片步骤公司网站荣誉墙怎么做
  • 建设部人事考试网站官网wordpress自助发货系统