- 浏览: 660049 次
- 性别:
- 来自: 常州
文章分类
- 全部博客 (345)
- java (63)
- Struts2 (11)
- Spring2.5 + (17)
- Hibernate (25)
- Struts2 Spring hibernate (5)
- log4j (3)
- apache tomcat (12)
- oracle (22)
- oracle_存储过程 (4)
- mysql (18)
- jquery (11)
- prototype (5)
- js (19)
- quartz (5)
- 设计模式 (6)
- eclipse/MyEclipse 注意事项 (9)
- eclipse (0)
- css (6)
- 正则表达式 (2)
- linux (18)
- PHP (6)
- 多线程 (20)
- XML (1)
- jstl (3)
- mongoDB (7)
- android (20)
- 反射 (1)
- IOS (46)
- SVN (3)
- C/C++ (4)
- 百度地图 (2)
- IO/SOCKET (3)
- 百度地图JS (1)
- 树莓派/香蕉派 (1)
最新评论
-
anny101:
想转发一下,不知道怎么转发。评论一下吧。方便查看。
fetch = FetchType.EAGER 作用 -
Navee:
果然我这也是是防火墙问题
解决 Linux 安装 httpd局域网无法访问 -
dhyang909:
...
oracle 10g+ 行列转换 -
国产希特勒:
真强,居然有人把公司的面试题挂到javaeye上了
锦江国际的一道面试题(很简单) -
tomfish88:
比如我要拦截不同业务的service类里面的方法 @Poi ...
Spring AOP annotation 拦截表达式 分析
例:Hello World, 欢迎观看《android教程》哈哈!
要求把《android教程》变红,其他为绿
给textView定义一个id,定义id的方法:android:id="@+id/tv"
android:autoLink="all" 表示web/mail/map之类的都加链接
修改main.xml:
<TextView android:id="@+id/tv" android:layout_width="fill_parent" android:layout_height="wrap_content" android:textSize="20sp" android:textColor="#00ff00" android:text="@string/say" />
String.xml:
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="hello">Hello World, TextVitwDemoActivity!</string> <string name="say">Hello World, 欢迎观看《android教程》哈哈!</string> <string name="app_name">TextViewDemo</string> </resources>
TextVitwDemoActivity.java:
package com.mhm.textView; import android.app.Activity; import android.os.Bundle; import android.text.Html; import android.widget.TextView; public class TextVitwDemoActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView tv = (TextView)findViewById(R.id.tv); String text = tv.getText().toString(); int tb = text.indexOf("《"); int te = text.indexOf("》") + 1; String text_b = text.substring(0, tb); String text_m = text.substring(tb, te); String text_e = text.substring(te, text.length()); tv.setText(Html.fromHtml(text_b + "<font color=red>" + text_m + "</font>" + text_e)); } }
也可以这样写:
package com.mhm.textView; import android.R.color; import android.app.Activity; import android.graphics.Color; import android.os.Bundle; import android.text.Html; import android.text.Spannable; import android.text.SpannableStringBuilder; import android.text.style.ForegroundColorSpan; import android.widget.TextView; public class TextVitwDemoActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView tv = (TextView)findViewById(R.id.tv); String text = tv.getText().toString(); int tb = text.indexOf("《"); int te = text.indexOf("》") + 1; SpannableStringBuilder style = new SpannableStringBuilder(text); style.setSpan(new ForegroundColorSpan(Color.GREEN), 0, tb, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); style.setSpan(new ForegroundColorSpan(Color.RED), tb, te, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); style.setSpan(new ForegroundColorSpan(Color.GREEN), te, text.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); tv.setText(style); } }
这里有个奇怪的地方,int te = text.indexOf("》") + 1
+1必须写在这里,写在下面就不行。。。啥原因?
发表评论
-
sqlite中对日期的操作
2017-04-20 09:57 631在android中使用sqlite时,日期处理比较特殊,网 ... -
android.去头样式
2017-03-13 23:32 443AndroidManifest.xml中修改: andro ... -
android.文字阴影
2017-03-13 23:17 489<TextView android: ... -
android apk 升级代码
2015-09-03 22:22 640在闪屏中处理升级。 加入两项权限: < ... -
默认样式中,去掉标题栏
2015-09-03 22:12 720style.xml中的AppTheme中,加入一行 < ... -
android_14 线性布局2
2011-12-09 16:53 928<?xml version="1.0&q ... -
android_14 线性布局
2011-12-09 16:24 1190Either attribute can be applied ... -
android_12 activity 保存状态
2011-12-09 15:27 1035当activity处于 onPause(), onSt ... -
android_11 activity 生命周期
2011-12-08 16:24 1145普通从一个activity进入另一个activity 第一步 ... -
android_11 activityA调activityB,再返回activityA
2011-12-08 13:27 1163ButtonDemoActivity(activityA) ... -
android_10 activityA调activityB
2011-12-08 10:51 1212ButtonDemoActivity(activityA ... -
android_9 Intent 基础
2011-12-07 14:20 998mail.xml: <?xml version=&qu ... -
android_8 button
2011-12-06 17:51 1201package com.mhm.button.activ ... -
android_7 editView
2011-12-06 16:17 1009main.xml: <?xml version=&qu ... -
android_6 textview 的 跑马灯效果
2011-12-06 11:45 1084字符串不能换行,必须在一行上,用singleLing=true ... -
android_3 项目目录简介
2011-12-05 15:21 9221、res包中,放小的资源,如果没有使用里面的资源,那么不会打 ... -
android_4 HelloWorld
2011-12-05 15:11 10291、先启动模拟器 2、创建 android porje ... -
android_2 安装程序
2011-12-05 14:14 10661、网上下载个apk程序。 2、在CMD中:进入pla ... -
android_1 环境搭建
2011-12-05 12:11 10471、下载eclipse,建议用eclipse 3.5,3.6会 ...
相关推荐
SpannableString是CharSequence的一个子类,允许我们在字符串的不同部分应用不同的格式,如颜色、字体大小、样式等。与普通的String相比,SpannableString提供了更多控制文本格式化的能力。 1. 创建SpannableString...
SpannableString是Spannable的一个具体实现,它是一个不可变的字符串,我们可以向其中添加各种Span对象来改变文本的样式。例如,我们可以通过以下方式设置TextView中某段文字的颜色: ```java TextView textView =...
TextView可以接受简单的HTML格式文本,通过`Html.fromHtml()`方法,我们可以将HTML字符串转换为Spanned对象,从而在TextView中显示富文本。例如,我们可以通过`<img>`标签插入图片,使用`<font>`标签改变文字颜色。 ...
标题"同一个textview,字体颜色不一样"和描述"android中TextView分段显示不同颜色,字体,时间"所提到的问题,就是如何在一个`TextView`中实现文本分段样式。 首先,我们可以使用`SpannableString`和`Spanned`接口...
首先,TextView是Android SDK中的一个核心组件,它继承自View类。它的主要功能是展示单行或多行文本,可以进行各种格式化处理,如设置字体、颜色、大小、对齐方式等。开发者可以通过XML布局文件或代码动态创建...
`TextView`提供了`SpannableString`和`SpannableStringBuilder`类,它们可以用来创建具有不同属性的字符串,比如改变颜色、字体大小等。以下是如何使用它们来设置部分文字颜色: ```java // 创建一个可变的...
`Color.parseColor()`函数接受一个颜色字符串,如`"#FF0000"`表示红色。 - 或者,如果你有颜色资源,可以使用`setTextColor(ContextCompat.getColor(context, R.color.your_color))`,这里的`R.color.your_color`是...
使用字符串资源的好处是可以统一管理应用中的所有文本,方便进行多语言支持,以及在后续的修改中只需在一个地方进行更改。例如,要在界面上显示“欢迎”这个文本,可以在strings.xml文件中定义一个名为`welcome_...
2. 在代码中,我们可以创建一个SpannableString,并使用ImageSpan将ImageView转换为可插入TextView的Span。 ```java ImageView imageView = findViewById(R.id.image_view); Drawable drawable = imageView....
1. 创建一个TextView,并设置其可编辑性为false,以防止用户直接修改评论内容。 2. 获取所有评论数据,包括用户名和评论内容,这些数据通常存储在数据库或网络服务器上。 3. 遍历评论数据,为每条评论创建一个...
TextView是Android SDK中的一个视图类,它允许开发者在界面上展示单行或多行文本。它可以格式化文本,支持字体大小、颜色、样式等的变化,还能处理链接和点击事件。在XML布局文件中,我们通常使用`<android.widget....
`Android-MarkedView` 就是这样一个库,它是一个专门为Android平台设计的用于显示Markdown文档的TextView组件。 `MarkedView` 的主要功能是将Markdown源代码解析并渲染成美观的文本,提供类似网页浏览器的阅读体验...
在Android应用开发中,TextView是不可或缺的一个控件,它用于显示文本内容,广泛应用于各种界面元素,如标签、按钮、消息提示等。本资源“Android应用源码之4.TextView控件学习.zip”提供了关于TextView深入学习的...
SpannableString可以让我们在字符串中选择性地应用属性,例如设置特定字符或单词的间距。而自定义Typeface则可以通过修改字体文件内部的字形间距来全局改变所有文本的字符间隔。 下面是一个简单的自定义TextView...
在本项目中,“bmi201740405211_desertxs2_BMI_android_安卓开发BMI_picturedt5_”是一个针对Android平台的BMI(Body Mass Index,身体质量指数)计算应用的开发实例。这个项目旨在教开发者如何在Android环境中创建...
要创建一个Button,我们可以在XML布局文件中定义它,如下所示: ```xml android:id="@+id/my_button" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="点击我" /> `...
总结起来,针对Android `TextView`设置不同颜色字体的需求,`SpannableStringBuilder`是一个既简单又高效的选择,它允许直接操作字符串并设置颜色,而无需额外的布局或HTML解析。同时,`Html.fromHtml()`方法在处理...
2. **使用SpannableString**: SpannableString允许我们在字符串中设置不同的格式,包括文本样式、颜色、对齐方式等。通过设置Span,可以强制让标点符号出现在行首。例如,可以创建一个CharacterStyle的子类,然后...
SpannableString和SpannableStringBuilder是Android提供的两种富文本字符串对象。它们可以用来设置文本中的某一部分的样式,比如改变颜色、字体大小或添加下划线。通过创建这些对象并使用例如ForegroundColorSpan、...
`SpannableString`允许我们对字符串中的部分进行格式化。我们可以创建一个`CharacterStyle`子类,比如`UnderlineSpan`的派生类,并在其中自定义绘制两道杠。然后将其应用于"¥"字符。以下是大致步骤: - 创建自定义...