2

電話番号とメッセージを指定して、プリセットメッセージをプリセット番号にすばやく送信できる小さなアプリを作成しています。主な機能を稼働させたので、ウィジェットを作成したいと思います。

私はさまざまなウィジェットチュートリアルで遊んでいますが、私がやりたいことをカバーしているものはありません。それらはすべて、時計を更新するか、アクティビティを開始するかのいずれかになります。私がやりたいのは、ウィジェットのボタンが押されたときにメッセージを送信することですToast。「メッセージが送信されました」と言ってください。

onClickListenerアクティビティを起動せずにボタンにを追加するにはどうすればよいですか?

私のウィジェットクラスは、公式の開発ガイドの例とほとんど同じように見えます

public class SaldoWidget extends AppWidgetProvider {

    public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
        final int N = appWidgetIds.length;
        for (int i=0; i<N; i++) {
            int appWidgetId = appWidgetIds[i];

            Intent intent = new Intent(context, SaldoActivity.class);
            PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);

            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget1);
            views.setOnClickPendingIntent(R.id.button, pendingIntent);

            appWidgetManager.updateAppWidget(appWidgetId, views);
        }
    }
}
4

1 に答える 1

1

ボタンクリックでホーム画面ウィジェットを更新するにはカスタムブロードキャストレシーバーをマニフェストに登録し、ウィジェットでアクションとして追加する必要があります。

ウィジェットをクリック可能にするのは4〜5ステップのタスクであり、ここですべてのステップを説明することはできません。Androidウィジェットが私の答えを更新しないのを見て、 HomeWidgetRendomNumberからクリックすると乱数を生成する動作中のホーム画面アプリウィジェットをダウンロードしてください。

于 2012-05-26T14:49:10.693 に答える