package lab.sodino.android;
import android.app.Activity;
import android.graphics.Color;
import android.graphics.Typeface;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.Spanned;
import android.text.method.LinkMovementMethod;
import android.text.style.ForegroundColorSpan;
import android.text.style.ImageSpan;
import android.text.style.StrikethroughSpan;
import android.text.style.StyleSpan;
import android.text.style.URLSpan;
import android.text.style.UnderlineSpan;
import android.widget.TextView;
public class AndroidAct extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TextView txtInfo = new TextView(this);
SpannableString ss = new SpannableString("红色打电话斜体删除线绿色下划线图片:.");
ss.setSpan(new ForegroundColorSpan(Color.RED), 0, 2,
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, 15,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
Drawable d = getResources().getDrawable(R.drawable.icon);
d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BASELINE);
ss.setSpan(span, 18, 19, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
txtInfo.setText(ss);
txtInfo.setMovementMethod(LinkMovementMethod.getInstance());
setContentView(txtInfo);
}
}
分享到:
相关推荐
要为TextView添加删除线,我们主要使用`Paint`类中的`STRIKE_THRU_TEXT_FLAG`常量。这个标志告诉`Paint`对象在绘制文本时应添加删除线。下面是一段简单的Java代码示例,演示如何实现这个功能: ```java public ...
一、TextView 设置删除线有两种方式: (推荐)方式一: 通过按位或运算符|,将 TextView 原本的 Flags 属性和删除线一块设置。setPaintFlags内会对 TextView 进行重绘。 tv.setPaintFlags(tv.getPaintFlags() | ...
今天我们要讨论的是如何自定义一个TextView,实现删除线效果,并且能够自由地改变删除线的颜色。这个功能在很多场景下都很实用,比如显示已取消的订单、过期的优惠券等。 首先,我们从`TextView`的基本概念开始。...
下面是一个具体的示例,展示如何在TextView中同时添加删除线和下划线效果: ```java // 获取TextView TextView textView = (TextView) findViewById(R.id.text_view); // 设置删除线 textView.getPaint().setFlags...
为TextView添加动画效果,如淡入淡出、闪烁、滑动等,可以增加用户的交互体验。可以利用Android的动画库,如`ObjectAnimator`或`ValueAnimator`,以及属性动画来实现。 3. **文字渐变色** 如果需要让TextView的...
- **删除线标签 `<strike>`**:定义带删除线的文字(HTML5中已废弃)。 - **强调标签 `<strong>`**:定义重要的文字。 - **下标标签 `<sub>`**:定义下标文字。 - **上标标签 `<sup>`**:定义上标文字。 - **...
2. **删除线效果**:使用`strikethrough`值可以给文本添加删除线,表示文本已过期或不再有效。 3. **斜体文本**:通过`android:textStyle`属性设置为`italic`,可以使文本倾斜,常用于强调或者表示斜体字。 4. **...
8. **下划线和删除线** - `android:textDecorationLine`属性可以设置文本的装饰线,如underline、line-through等。 - `android:textDecorationStyle`用于设置装饰线的样式,如solid、dotted等。 9. **输入限制** ...
只需创建一个StrikethroughSpan实例,并将其设置到需要添加删除线的文本上。 在实际编码过程中,首先创建一个SpannableString对象,然后根据需求创建并应用不同的Span。以下是一个简单的示例: ```java String ...
5. **下划线**和**删除线**:使用`android:textDecorationLine`属性添加下划线或删除线,如`underline`和`line-through`。 6. **字体**:可以通过`android:typeface`改变字体类型,或使用自定义字体资源。 7. **...
`android:textDecorationLine`属性可以添加下划线、删除线等装饰,如`android:textDecorationLine="underline"`。 11. **自定义字体**: 若要使用自定义字体,需先将字体文件放入res/font目录,然后使用`app:font...
- StrikethroughSpan用于添加删除线。 - UnderlineSpan用于添加下划线。 - AbsoluteSizeSpan用于设定文本的绝对字体大小。 - DynamicDrawableSpan用于基于文本基线或底部对齐的图像设置。 - ImageSpan用于插入图片到...
7. 删除线(中划线)(StrikethroughSpan) 8. 相当于占位符(SuggestionSpan) 9. 下划线(UnderlineSpan) 10. 绝对大小(文本字体)(AbsoluteSizeSpan) 11. 动态DrawableSpan 设置图片,基于文本基线或底部对齐...
4. **删除线和下滑线**:添加删除线表示已废弃或无效的信息,下滑线则常用于下划线链接,TextViewBuilder能方便地实现这些效果。 5. **文本超链接**:将文本转化为可点击的链接,可以跳转到网页、内部页面或其他...
- **删除线**:`StrikethroughSpan`添加删除线。 - **上标**:`SuperscriptSpan`设置上标。 - **下标**:`SubscriptSpan`设置下标。 - **项目符号**:`BulletSpan`添加项目符号。 在实际应用中,这些方法可以...
此外,MTextView可能还包含了一些额外的特性,比如支持文字的行间距调整、文字阴影效果、下划线和删除线等,这些都是为了进一步增强自定义视图的灵活性和可定制性。开发者可以根据具体需求,探索和利用这些特性,...
这可以通过设置`StrikeThroughSpan`来实现,将已降价的文本添加删除线。 5. **下划线效果**: 要添加绿色下划线,可以使用`UnderlineSpan`配合自定义颜色。创建一个SpannableString,应用`UnderlineSpan`,并用`...
6. **下划线与删除线**:`android:textDecorations`可以添加下划线或者删除线。 7. **文本选择器**:通过定义`android:background`,我们可以为`TextView`设置按下时的背景颜色或图片,实现类似按钮的效果。 8. **...