我需要创建两个状态栏Notifications.when我点击第一个通知图标。,我要删除一些数据(ex.activity1)。,如果我点击第二个通知图标。,我将显示另一个数据(Ex .activity2)。我创造得很好。但我无法显示数据。
我的代码:
package com.collabera.labs.sai;
import java.util.ArrayList;
import android.R.string;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SimpleNotification extends Activity {
private NotificationManager mNotificationManager;
private int SIMPLE_NOTFICATION_ID_A = 0;
private int SIMPLE_NOTFICATION_ID_B = 1;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Button start = (Button) findViewById(R.id.notifyButton);
//Button cancel = (Button)findViewById(R.id.cancelButton);
start.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// display A
displayNotification("Extra for A", "This is A", "Some text for activity A", MyActivityA.class, SIMPLE_NOTFICATION_ID_A);
// display B
displayNotification("Extra for B", "This is B", "Some text for activity B", MyActivityB.class, SIMPLE_NOTFICATION_ID_B);
}
});
}
private void displayNotification(String extra, String contentTitle, String contentText, Class<?> cls, int id) {
Notification notifyDetails = new Notification(R.drawable.icon, "New Alert!", System.currentTimeMillis());
Intent intent = new Intent(this, cls);
Bundle b=new Bundle();
b.putString("extra", extra);
intent.putExtras(b);
PendingIntent contentIntent = PendingIntent.getActivity(getApplicationContext(), id, intent, PendingIntent.FLAG_ONE_SHOT);
notifyDetails.setLatestEventInfo(getApplicationContext(), contentTitle, contentText, contentIntent);
mNotificationManager.notify(id, notifyDetails);
}
}
On MyActivityA:
TextView tv;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.sub);
tv=(TextView)findViewById(R.id.tv);
Bundle b = getIntent().getExtras();
String value = b.getString("extra");
tv.setText(value);
这是什么错误..它没有显示文字..
答案 0 :(得分:0)
试试这个: 第一项活动:
int requestID = (int) System.currentTimeMillis(); Intent intent = new Intent(this, NotificationReceiverActivity.class); intent.putExtra("data1", "My Data 1"); intent.putExtra("data2", "My Data 2"); PendingIntent pIntent = PendingIntent.getActivity(this, requestID, intent, 0);
从第一项活动调用的第二项活动
在oncreated方法中使用
Bundle extras = getIntent().getExtras();
if(extras != null){
String data1 = extras.getString("data1");
String data2 = extras.getString("data2");
Log.e("Ddata1" + data1, data2);
}