我正在尝试编写一个简单的android窗口小部件,我有以下问题。
我尝试从appWidgetProvider类访问textView,以便将字体设置为自定义字体。代码如下所示:
TextView mytext = (TextView) findViewById(R.id.mytext);
Typeface typeface = Typeface.createFromAsset(context.getAssets(), "fonts/custom-font.ttf");
mytext.setTypeface(typeface); 问题是appWidgetProvider对象中没有定义findViewById。那么我该怎么做呢?我发现您可以通过创建画布并将自定义字体绘制到ImageView来完成此操作,但这不是一个好的解决方案。有没有办法用textView做到这一点?如果可以在活动中完成,为什么不能在小部件中完成呢?
谢谢
发布于 2010-11-10 03:54:02
,那么我该怎么做呢?
你不能。你将不得不坚持你的应用小部件的内置字体,直到他们在RemoteViews中添加setTypeface()支持。
如果可以在活动中完成,为什么不能在小部件中完成?
因为应用程序小部件的Views不在您的进程中。它们在主屏幕的进程中。
https://stackoverflow.com/questions/4136891
复制相似问题