如果是桌面Widget的話,你設(shè)置RemoteView的setOnClickPendingIntent,然后你可以啟動(dòng)一個(gè)activity,把這個(gè)activity樣式修改成一個(gè)Dialog
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括撫松網(wǎng)站建設(shè)、撫松網(wǎng)站制作、撫松網(wǎng)頁制作以及撫松網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,撫松網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到撫松省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
查看原帖
android 彈出對(duì)話框后要實(shí)現(xiàn)不能回退 ,可以重寫在這個(gè)activity中的 back鍵的事件處理,讓back不響應(yīng)。
public boolean dispatchKeyEvent(android.view.KeyEvent event) {
switch(event.getKeyCode())
{
case KeyEvent.KEYCODE_BACK:
{
return false;
}
}
return true;
};
這樣點(diǎn)擊返回鍵就實(shí)現(xiàn)了禁止回退。
AlertDialog.Builder?builder?=?new?AlertDialog.Builder(context);
builder.setTitle("提示");
builder.setMessage("恭喜你,注冊(cè)成功!");
builder.setPositiveButton("去登錄",?new?DialogInterface.OnClickListener()?{ //增加一個(gè)成功按鈕,并增加點(diǎn)擊事件
@Override
public?void?onClick(DialogInterface?dialog,?int?which)?{
//點(diǎn)擊去登錄的操作
}
});
builder.setNegativeButton("繼續(xù)注冊(cè)",?new?DialogInterface.OnClickListener()?{ //增加一個(gè)中間的按鈕,并增加點(diǎn)擊事件
@Override
public?void?onClick(DialogInterface?dialog,?int?which)?{
//點(diǎn)擊繼續(xù)注冊(cè)的操作
}
});
builder.setCancelable(false); //彈出框不可以按返回取消
AlertDialog?dialog?=?builder.create(); //創(chuàng)建對(duì)話框
dialog.setCanceledOnTouchOutside(false); //設(shè)置對(duì)話框失去焦點(diǎn)不會(huì)消息
dialog.show(); //彈出
任意Activity彈出對(duì)話框,那你可以用service 服務(wù)中彈出一個(gè)全局的
以下是代碼
AlertDialog.Builder?builder?=?new?AlertDialog.Builder(this);
builder.setIcon(R.drawable.ic);
builder.setTitle("標(biāo)題");
builder.setMessage("提示文字");
builder.setPositiveButton(R.string.btn_update,?new?OnClickListener()?{
@Override
public?void?onClick(DialogInterface?dialog,?int?which)?{
//增加按鈕,回調(diào)事件
}
);
builder.setCancelable(false);//彈出框不可以換返回鍵取消
AlertDialog?dialog?=?builder.create();
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);//將彈出框設(shè)置為全局
dialog.setCanceledOnTouchOutside(false);//失去焦點(diǎn)不會(huì)消失
dialog.show();
這里報(bào)錯(cuò)是代碼寫法有誤,建議一行一行代碼的寫。
具體實(shí)現(xiàn)代碼:
1.創(chuàng)建對(duì)象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("請(qǐng)輸入"); //設(shè)置對(duì)話框標(biāo)題
builder.setIcon(android.R.drawable.btn_star); //設(shè)置對(duì)話框標(biāo)題前的圖標(biāo)
2.創(chuàng)建EditText輸入框
final EditText edit = new EditText(context);
3.將輸入框賦值給Dialog,并增加確定取消按鍵
builder.setView(edit);
builder.setPositiveButton("確認(rèn)", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你輸入的是: " + edit.getText().toString(), Toast.LENGTH_SHORT).show();
}
});
builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
Toast.makeText(context, "你點(diǎn)了取消", Toast.LENGTH_SHORT).show();
}
});
4.設(shè)置常用api,并show彈出
builder.setCancelable(true); //設(shè)置按鈕是否可以按返回鍵取消,false則不可以取消
AlertDialog dialog = builder.create(); //創(chuàng)建對(duì)話框
dialog.setCanceledOnTouchOutside(true); //設(shè)置彈出框失去焦點(diǎn)是否隱藏,即點(diǎn)擊屏蔽其它地方是否隱藏
dialog.show();
彈出一個(gè)消息框,在android中可以這樣實(shí)現(xiàn)
new?AlertDialog.Builder(self) ? ?
.setTitle("標(biāo)題")
.setMessage("簡單消息框")
.setPositiveButton("確定",?null)
.show();