我正在尝试使用Nativescript和Angular创建一个小部件。
我使用了this示例来进一步帮助我,但现在我陷入了这段代码中。
我在互联网上找不到任何帮助,也无法自己弄清楚。
这是我的组件,与我刚接触Nativescript时使用的示例非常相似。
@JavaProxy("a.b.MyWidget")
export class WidgetComponent extends android.appwidget.AppWidgetProvider {
onUpdate(context, appWidgetManager, appWidgetIds): void {
var appWidgetsLen = appWidgetIds.length
for (let i = 0; i < appWidgetsLen; i++) {
this.updateWidget(context, appWidgetManager, appWidgetIds, appWidgetIds[i]);
}
}
updateWidget(ontext, appWidgetManager, appWidgetIds, widgetId){
const context = app.android.context;
let views:any = context.getResources().getIdentifier("appwidget", "layout", context.getPackageName());
let resourceId:any = context.getResources().getIdentifier("appwidget", "id", context.getPackageName())
var textView = new android.widget.RemoteViews(context.getPackageName(), views);
textView.setTextViewText(resourceId.taps_text, "Just for testing");
var intent: android.content.Intent = new android.content.Intent(context, com.tns.MyWidget);
intent.setAction(android.appwidget.AppWidgetManager.ACTION_APPWIDGET_UPDATE);
intent.putExtra(android.appwidget.AppWidgetManager.EXTRA_APPWIDGET_IDS, appWidgetIds);
var startAppIntent = new android.content.Intent(context, com.tns.NativeScriptActivity.class); // the activity defined in AndroidManifest
startAppIntent.putExtra(android.appwidget.AppWidgetManager.EXTRA_APPWIDGET_ID, widgetId);
appWidgetManager.updateAppWidget(widgetId, textView);
}
}
在布局文件中没有文本属性,我想从组件中进行设置。
当我调用意图时,它卡在了com.tns.MyWidget
上。
答案 0 :(得分:0)
您已将JavaProxy声明为a.b.MyWidget
,因此在示例中,您必须访问的是JavaProxy,而不是com.tns.MyWidget
。