首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >有没有一种简单的方法来删除应用程序小部件中的文本?

有没有一种简单的方法来删除应用程序小部件中的文本?
EN

Stack Overflow用户
提问于 2010-10-07 20:21:46
回答 16查看 110.8K关注 0票数 148

我想知道在Android中是否有一种简单的方法可以在应用程序小部件中敲击文本。在正常的活动中,使用textview标志很容易:

代码语言:javascript
复制
textView.setPaintFlags(textView.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);

但由于在应用程序小部件中,我只能使用远程视图...我不知道这是否可能

有人知道这件事吗?

谢谢!

EN

回答 16

Stack Overflow用户

回答已采纳

发布于 2011-10-09 19:12:24

您可以使用以下命令:

代码语言:javascript
复制
remoteviews.setInt(R.id.YourTextView, "setPaintFlags", Paint.STRIKE_THRU_TEXT_FLAG | Paint.ANTI_ALIAS_FLAG);

当然,您也可以从android.graphics.Paint类添加其他标志。

票数 73
EN

Stack Overflow用户

发布于 2011-07-19 05:22:43

若要在文本视图中以编程方式完成此操作,请在其他视图>>中未经测试

代码语言:javascript
复制
TextView tv = (TextView) findViewById(R.id.mytext);
tv.setText("This is strike-thru");
tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
票数 204
EN

Stack Overflow用户

发布于 2012-07-31 23:43:23

另一种编程方式,它看起来不像是一种hack,而是一种画图方式:

而不是做:

代码语言:javascript
复制
tv.setText(s);

执行以下操作:

代码语言:javascript
复制
private static final StrikethroughSpan STRIKE_THROUGH_SPAN = new StrikethroughSpan();
...
tv.setText(s, TextView.BufferType.SPANNABLE);
Spannable spannable = (Spannable) tv.getText();
spannable.setSpan(STRIKE_THROUGH_SPAN, 0, s.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
票数 82
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3881553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档