ndroid动态创建按钮并添加事件

public class MyActivity extends Activity {
/**
* Called when the activity is first created.
*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main); final LinearLayout layout2 = new LinearLayout(this);
layout2.setOrientation(LinearLayout.VERTICAL);
Button bt1 = new Button(this);
setContentView(layout2);
Button bt2 = new Button(this);
bt1.setText("按钮1");
bt2.setText("按钮2");
layout2.addView(bt1);
layout2.addView(bt2);
setContentView(layout2); Button.OnClickListener listen=new Button.OnClickListener()
{
public void onClick(View vObj)
{
//Button butObj=(Button)vObj;
//Toast.makeText((Activity)butObj.getContext() , "点击了["+butObj.getText()+"]", Toast.LENGTH_SHORT).show(); NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); PendingIntent pendingIntent2 = PendingIntent.getActivity(vObj.getContext(), 0,
new Intent(vObj.getContext(), MyActivity.class), 0);
// 通过Notification.Builder来创建通知,注意API Level
// API11之后才支持 Notification notify2 = new Notification.Builder(vObj.getContext())
.setSmallIcon(R.drawable.ic_launcher) // 设置状态栏中的小图片,尺寸一般建议在24×24,这个图片同样也是在下拉状态栏中所显示,如果在那里需要更换更大的图片,可以使用setLargeIcon(Bitmap
// icon)
.setTicker("请做好准备,明天查水表 :)")// 设置在status
// bar上显示的提示文字
.setContentTitle("友情提醒")// 设置在下拉status
// bar后Activity,本例子中的NotififyMessage的TextView中显示的标题
.setContentText("请做好准备,明天查水表 :)")// TextView中显示的详细内容
.setContentIntent(pendingIntent2) // 关联PendingIntent
.setNumber(1) // 在TextView的右方显示的数字,可放大图片看,在最右侧。这个number同时也起到一个序列号的左右,如果多个触发多个通知(同一ID),可以指定显示哪一个。
.getNotification(); // 需要注意build()是在API level
// 16及之后增加的,在API11中可以使用getNotificatin()来代替
notify2.flags |= Notification.FLAG_AUTO_CANCEL;
manager.notify(1, notify2); }
}; bt1.setOnClickListener(listen);
bt2.setOnClickListener(listen);
}
}
上一篇:POJ 1986 Distance Queries(Tarjan离线法求LCA)


下一篇:记录-Intellij Idea下以Tomcat运行Web项目时的位置问题