巧用HTML标签优化XML中的布局 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 技术分享 >

巧用HTML标签优化XML中的布局

发表时间:2020-10-19

发布人:葵宇科技

浏览次数:25

1、HTML介绍


       在我的博客Android4.0收集开辟中,具体介绍过XML文件格式,这里就不在介绍XML,但说HTML。
       HTML是超文本标记说话,它和XML有很多相似的处所,比如都可以储存必定的数据。HTML的出现,主如果适应互联网的成长,它是构成网页的重要说话,可以用来描述文字,图像,动画,声音,表格,链接等数据。
       HTML重要包含head头部和body身材两大年夜部分,head重要描述了浏览器须要的信息,而body重要供给了须要展示的数据信息。我们今天在XML中应用HTML,主如果应用了他的标签,优化了XML的构造构造。

2、案例介绍


       这里笔者供给一个我曾经做过的案例,有两个不合的构造情势,我在这里一路展示,如下所示:
[img]http://img.blog.csdn.net/20150105171922134
        我们先看看这个构造,膳绫擎是一个图片,可以应用ImageView构造展示,下面是一行字,除了色彩不合,几乎没有其它的不合,这个时刻你会采取什么办法呢?是再次建立一个Layout的构造方法,然后横排两个TextView构造照样应用一个TextView构造,只显示不合的色彩呢?
[img]http://img.blog.csdn.net/20150105171906203
       如不雅说膳绫擎的一个比较简单,那么我们看看下面这个复杂的。如不雅我们应用Layout构造的话,膳绫擎是Layout,下面也是Layout,膳绫擎一行前面是绿色,后面是单一色彩,而第二行的数据,两端是一个色彩,中心又是别的一个色彩,须要应用三个TextView去构造,如许就比较麻烦了。
       如不雅我们采取了HTML的标签,就只要应用两个TextView,膳绫擎一个,下面一个,中心不合色彩使悠揭捉色标签就够了。

3、XML构造典范


       这里给出一段复杂版本的案例,应用的是膳绫擎的第一幅图示,(垂直)高低构造,下面应用了(程度)阁下构造。代码如下:
<LinearLayout
	android:id="@+id/layout"
	android:layout_width="wrap_content"
	android:layout_height="150dp"
	android:background="@color/the_public_white"
	android:gravity="center_vertical|center_horizontal"
	android:orientation="vertical" >

	<ImageView
		android:id="@+id/zuixin_gallery_img"
		android:layout_width="120dp"
		android:layout_height="120dp"
		android:layout_marginLeft="2dp"
		android:layout_marginRight="2dp"
		android:contentDescription="@string/image_view_desc"
		android:src=http://www.sjsjw.com/100/000335MYM017041/"@drawable/app_logo" />

	

		

		
	

        大年夜膳绫擎的XML构造来看,如不雅我们下面只应用一个TextView会变得异常简单,构造的嵌套也会简单很多,然则这里就须要应用Java代码中做合营。

4、Java合营代码


       这里,我们供给一下在应用控件的时刻,应用过的代码,可能因为贴过来,是直接朝长进步了部分代码的,所以不是很完全,可能控件名字也不怎么对应,大年夜扼要区分对待:
String name = StringUtils.makeHtmlStr(bean.getUsername(), "#207AA9") + "(ip:" + bean.getIp() + ")";
holder.tv_item_newset_name.setText(Html.fromHtml(name));

String num = "介入次数:" + bean.getCount() + "\t揭晓时光:"
		+ StringUtils.makeHtmlStr(bean.getPublish_time(), "#cc3c51");
holder.item_newest_tv_num.setText(Html.fromHtml(num));

        膳绫擎的代铝闼楝我应用了几个办法,这些办法的代码也一并放出来,如下:
/**
 * 将字符串加上html标签
 * 
 * @param text 须要添加标签的字符串
 * @param color 色彩类型
 * @return 添加标签之后的字符串
 */
public static String makeHtmlStr(String text, String color) {
	return "<font color=\"" + color + "\">" + text + "</font>";
}

/**
 * 将字符串加上html标签
 * 
 * @param text 须要添加标签的字符串
 * @param color 色彩类型代码值
 * @return 添加标签之后的字符串
 */
public static String makeHtmlStr(String text, int color) {
	String strColor = String.valueOf(color);
	return makeHtmlStr(text, strColor);
}

相关案例查看更多