Android中字符串片段高亮
Android中字符串片段高亮
1. 引言
在Android中,使某个字符串中的某个单词或汉字高亮,效果图及代码实现如下。
2. 效果图
3. 功能实现
1. 主界面(main.xml)实现:
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout xmlns:android = "http://schemas.android.com/apk/res/android"
- android:orientation = "vertical"
- android:layout_width = "fill_parent"
- android:layout_height = "fill_parent"
- >
- <TextView
- android:id = "@+id/highLight"
- android:layout_width = "wrap_content"
- android:layout_height = "wrap_content"
- />
- </LinearLayout>
2. 主Activity实现:
- package com.focus.fishme;
- import android.app.Activity;
- import android.graphics.Color;
- import android.os.Bundle;
- import android.text.Spannable;
- import android.text.SpannableStringBuilder;
- import android.text.style.BackgroundColorSpan;
- import android.widget.TextView;
- public class HighLightActivity extends Activity {
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- TextView highLightView = (TextView) findViewById(R.id.highLight);
- String highLightStr = "HighLight MaYingCai";
- String highLight = "MaYingCai";
- int start = highLightStr.indexOf(highLight);
- SpannableStringBuilder style = new SpannableStringBuilder(highLightStr);
- style.setSpan(new BackgroundColorSpan(Color.RED), start, start + highLight.length(),Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
- highLightView.setText(style);
- }
- }
评论暂时关闭