【问题标题】:How can I check which widget was clicked?如何检查单击了哪个小部件?
【发布时间】:2012-02-10 23:43:32
【问题描述】:

当点击不同的小部件时,我需要显示不同的数据。例如,小部件 1 将向我显示编号为 1 的活动,而小部件将显示编号为 2 的活动:)

也许我可以通过小部件的意图发送一些数据,但是如何在活动类中接收这些数据? 小部件类

Intent intent = new Intent(context, Information.class);
        intent.putExtra("widget_id", appWidgetId);
        PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
        remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget1x1);
        remoteViews.setOnClickPendingIntent(R.id.widget_layout, pendingIntent);

【问题讨论】:

    标签: android android-intent android-widget


    【解决方案1】:
    Bundle extras = intent.getBundle();
    String id = extras.getString("widget_id");
    

    【讨论】:

    • intent.putExtra("widget_id", appWidgetId); 在小部件类中,您的代码应该处于活动状态,那么我该如何绑定它?
    • intent.putExtra 之后,您将通过将意图作为参数传递来调用活动,不是吗?
    • 嗯,是的 + pendingintent 因为它是一个小部件
    • 因为你添加了 id 作为额外的意图,它会被传递。试试看。
    • ...我不知道该怎么做,强制关闭或有任何价值。 Bundle extras = getIntent().getExtras(); int id = extras.getInt("widget_id");
    猜你喜欢
    • 1970-01-01
    • 2012-01-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多