我想知道在Android中是否有一种简单的方法可以在应用程序小部件中敲击文本。在正常的活动中,使用textview标志很容易:
textView.setPaintFlags(textView.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
但由于在应用程序小部件中,我只能使用远程视图...我不知道这是否可能
有人知道这件事吗?
谢谢!
发布于 2011-10-09 19:12:24
您可以使用以下命令:
remoteviews.setInt(R.id.YourTextView, "setPaintFlags", Paint.STRIKE_THRU_TEXT_FLAG | Paint.ANTI_ALIAS_FLAG);
当然,您也可以从android.graphics.Paint类添加其他标志。
发布于 2011-07-19 05:22:43
若要在文本视图中以编程方式完成此操作,请在其他视图>>中未经测试
TextView tv = (TextView) findViewById(R.id.mytext);
tv.setText("This is strike-thru");
tv.setPaintFlags(tv.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
发布于 2012-07-31 23:43:23
另一种编程方式,它看起来不像是一种hack,而是一种画图方式:
而不是做:
tv.setText(s);
执行以下操作:
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);
https://stackoverflow.com/questions/3881553
复制相似问题