我想在主屏幕小部件中更改 textview 的字体?
RemoteViews remoteViews = new RemoteViews(context.getPackageName(),
R.layout.time_widget_layout);
remoteViews.setTextViewText(R.id.tvTime, Utility.getCurrentTime("hh:mm:ss a"));
我的资产文件夹中有字体。
答案 0 :(得分:0)
TextView上有一个名为的方法 setTypeface
如果您的字体位于“Assets / Font / Font.otf”,则设置字体的代码看起来与此类似:
Typeface font = Typeface.createFromAsset(context.getAssets(), "Font/Font.otf");
TextView textView = (TextView)findViewById(R.id.tvTime);
textView.setTypeface(font, Typeface.NORMAL);
可选 如果需要,您可以在继承自TextView的类的构造函数内执行此操作,然后在布局中使用该类,以防您想在多个不同的位置使用该字体。此外,如果您想在构造函数中执行此操作,您可以将布局中的样式属性作为样式属性传入,并使用它来代替上面的硬编码字符串。
答案 1 :(得分:-1)
RemoteView方法非常有限。但是setImageViewBitmap就足够了 使用java代码创建TextView,启用此功能:
textView.buildDrawingCache();
Bitmap finalResult = textView.getDrawingCache();
remoteImageView.setImageViewBitmap(R.id.ivWidget, finalResult);
现在设置typeFace,更改字体大小并执行任何操作,最后您可以获得所需的位图并将其设置为主屏幕ImageView
[out:json]
[timeout:25]
;
(
way
["highway"="motorway"]
["name"="Brooklyn-Queens Expressway"]
(40.73483602685421,-73.91463160514832,40.73785205632046,-73.9096748828888);
);
out body qt;