我有这样一门课:
public class FlowerForYouWidget extends AppWidgetProvider
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
....
RemoteViews views = new RemoteViews(context.getPackageName(),R.layout.flower_widget);
buildClock(context, views, "R.id.widgetHour", curHour);
....
}
public static RemoteViews buildClock(Context context, RemoteViews views, String btnId, String currentValue)
{
....
views.setImageViewBitmap(btnId, myBitmap);
....
}我需要将"R.id.widgetHour“作为参数传递给buildClock()方法和setImageViewBitmap。
发布于 2011-10-24 01:41:04
R类维护的所有引用都是int类型的。只需将其作为int类型传递,您就可以在函数中使用它
发布于 2011-10-24 01:42:40
这些是整数常量,而不是字符串。
发布于 2011-10-24 01:43:45
R类常量是整数,是应用程序资源中组件的唯一标识。所以把它作为一个整数传递,然后你就可以正常使用它了。
或如果您当前拥有它(一个字符串),那么您可以使用getResources().getIdentifier()通过名称来获取此id。
但是你甚至不需要传递它;R类是完全静态的,所以你可以从任何地方访问你所有的id。
https://stackoverflow.com/questions/7867883
复制相似问题