3

通知コードをボタンに設定しようとすると、常にこの部分でエラーが発生します

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this)

[[ コンストラクタ NotificationCompat.Builder(new View.OnClickListener(){}) は未定義です ]]

どうすればこの問題を解決できますか???

Button button9= (Button) findViewById(R.id.button9);
    button9.setOnClickListener(new View.OnClickListener(){
    public void onClick(View arg0) {


        ///////////My Notification//////////////////////////        
        NotificationCompat.Builder mBuilder =new NotificationCompat.Builder(this)
        .setSmallIcon(R.drawable.notification_icon)
        .setContentTitle("I'm astm  loooooooool")
        .setContentText("Hello baby to my world!");
        // Creates an explicit intent for an Activity in your app
        Intent resultIntent = new Intent(this, MainActivity.class);

        // The stack builder object will contain an artificial back stack for the
        // started Activity.
        // This ensures that navigating backward from the Activity leads out of
        // your application to the Home screen.
        TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
        // Adds the back stack for the Intent (but not the Intent itself) (ResultActivity)
        stackBuilder.addParentStack(MainActivity.class);
        // Adds the Intent that starts the Activity to the top of the stack
        stackBuilder.addNextIntent(resultIntent);
        PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
        mBuilder.setContentIntent(resultPendingIntent);
        NotificationManager mNotificationManager=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        int mId = 0;
        // mId allows you to update the notification later on.
        mNotificationManager.notify(mId, mBuilder.build());
        ///////////End Notification//////////////////////////
        }
    });
4

3 に答える 3

2

助けてくれてありがとう [[ 誰も答えてくれない looooooool ]]

NotificationCompat.Builderを Final として定義するだけで、自分で答えを得ることができ、うまく機能しました

^__^

        ///////// my Nine button (set Notification) //////////
    final NotificationCompat.Builder mBuilder =new NotificationCompat.Builder(this)
    .setSmallIcon(R.drawable.notification_icon)
    .setContentTitle("I'm astm  loooooooool")
    .setContentText("Hello baby to my world!");
    Button button9= (Button) findViewById(R.id.button9);
    final TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
    button9.setOnClickListener(new View.OnClickListener(){
    public void onClick(View arg0) {

        ///////////My Notification//////////////////////////        
        // Creates an explicit intent for an Activity in your app
        Intent resultIntent = new Intent();

        // The stack builder object will contain an artificial back stack for the
        // started Activity.
        // This ensures that navigating backward from the Activity leads out of
        // your application to the Home screen.
        // Adds the back stack for the Intent (but not the Intent itself) (ResultActivity)
        stackBuilder.addParentStack(MainActivity.class);
        // Adds the Intent that starts the Activity to the top of the stack
        stackBuilder.addNextIntent(resultIntent);
        PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0,PendingIntent.FLAG_UPDATE_CURRENT);
        mBuilder.setContentIntent(resultPendingIntent);
        NotificationManager mNotificationManager=(NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
        int mId = 0;
        // mId allows you to update the notification later on.
        mNotificationManager.notify(mId, mBuilder.build());
        ///////////End Notification//////////////////////////

      }
    });
于 2013-06-20T08:01:39.373 に答える
1

thisで変更getBaseContext

NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(getBaseContext());
于 2016-08-28T08:13:52.320 に答える
0

私も同じ問題を抱えていました。私が変更され:

NotificationCompat.Builder mBuilder =new NotificationCompat.Builder(this)

と:

NotificationCompat.Builder mBuilder =new NotificationCompat.Builder(this.context)
于 2015-10-16T05:13:03.367 に答える