远程TextView不支持setTextSize(float)?

时间:2013-03-07 17:14:37

标签: android android-widget

我正在尝试在Widget中设置远程TextView的文本大小,如下所示:

RemoteViews rv = new RemoteViews(mContext.getPackageName(), layoutId);
rv.setFloat(R.id.subject, "setTextSize", 10f);

虽然我可以设置其他属性,如文本颜色或更改视图的可见性,但在使用setTextSize时,通胀失败并显示以下错误消息(无堆栈跟踪):

Error inflating RemoteViews at position: 1, using loading view instead
android.widget.RemoteViews$ActionException:
view: android.widget.TextView doesn't have method: setTextSize (float)

setTextSize(float)具有@RemotableViewMethod注释,因此应该支持它,但是找不到方法(“没有方法”和“不支持”错误之间存在差异)。

为什么它显然不会找到方法呢? 在API 16中为RemoteViews引入setTextViewTextSize()方法可能表明我的方法有问题吗? 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:3)

您应该在第三个参数中使用int类型。因此,删除'f',使其成为显式浮动。

rv.setFloat(R.id.subject, "setTextSize", 10);