android彈出窗
『壹』 Android開發_彈出小小提示框_Toast
Android開發,彈出提示框「Toast」是因為輸入了下面這句操作命令:
Toast.makeText(getApplicationContext(),"你的提示內容",Toast.LENGTH_SHORT).show();
Android開發操作如下:
先導入:
import android.widget.Toast;
關鍵代碼:
Toast.makeText(getApplicationContext(),"提示內容",Toast.LENGTH_SHORT).show();
例子:
在一個activity中,只有一個button,單擊這個button彈出「單擊完成」提示框。
提示:
只需在onCreante方法中添加button的單擊事件
完整代碼:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_toast1);
//設置button的單擊事件
findViewById(R.id.btnToast).setOnClickListener(new View.OnClickListener() {
public void onClick(View arg0) {
//彈出提示框
Toast.makeText(getApplicationContext(),"單擊完成",Toast.LENGTH_SHORT).show();
}
});
}
『貳』 android 彈出輸入框並得到輸入框的結果
不用找了,這才是正解。你的需求其實是,需要一個阻塞式對話框,安卓本身所有彈窗都是非阻塞的。
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.widget.EditText;
/**
* 動態獲取用戶輸入後在繼續後面的流程
* 這是一個模態阻塞對話框(阻塞主線程,結果不用回調來處理)
*/
public class BlockingInputDialog {
String mInputString = "";
Activity mContext;
String mTitle;
EditText mEditText;
Handler mHandler;
public BlockingInputDialog(Activity context, String title){
mContext = context;
mTitle = title;
}
public String showDialog(){
mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
//super.handleMessage(msg);
throw new RuntimeException();
}
};
AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
builder.setTitle(mTitle);
builder.setCancelable(false);
mEditText = new EditText(mContext);
builder.setView(mEditText);
builder.setPositiveButton("確定", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
mInputString = mEditText.getText().toString();
Message message = mHandler.obtainMessage();
mHandler.sendMessage(message);
}
});
builder.setNegativeButton("取消", null);
builder.create().show();
try {
Looper.getMainLooper().loop();
}
catch(RuntimeException e2)
{
}
return mInputString;
}
}
『叄』 Android開發,點擊按鈕彈出對話框的問題
這里報錯是代碼寫法有誤,建議一行一行代碼的寫。
具體實現代碼:
1.創建對象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("請輸入"); //設置對話框標題
builder.setIcon(android.R.drawable.btn_star); //設置對話框標題前的圖標
2.創建EditText輸入框
final EditText edit = new EditText(context);
3.將輸入框賦值給Dialog,並增加確定取消按鍵
builder.setView(edit);
builder.setPositiveButton("確認", 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, "你點了取消", Toast.LENGTH_SHORT).show();
}
});
4.設置常用api,並show彈出
builder.setCancelable(true); //設置按鈕是否可以按返回鍵取消,false則不可以取消
AlertDialog dialog = builder.create(); //創建對話框
dialog.setCanceledOnTouchOutside(true); //設置彈出框失去焦點是否隱藏,即點擊屏蔽其它地方是否隱藏
dialog.show();
『肆』 android 彈出框怎麼點擊就取消
AlertDialog alert = new AlertDialog.Builder(XXX.this).setTitle("提示")
.setMessage("確定要退出么?")
.setPositiveButton("確定",new DialogInterface.OnClickListener() {//設置確定按鈕
@Override//處理確定按鈕點擊事件
public void onClick(DialogInterface dialog, int which) {
finish();
}
})
.setNegativeButton("取消",newDialogInterface.OnClickListener() {//設置取消按鈕
@Override//取消按鈕點擊事件
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();//對話框關閉。
}
}).create();
alert.show();
『伍』 android開發怎麼弄成,點擊圖標後彈出一個消息框。主界面不顯示
這里報錯是代碼寫法有誤,建議一行一行代碼的寫。
具體實現代碼:
1.創建對象框
AlertDialog.Builder builder = new Builder(context);
builder.setTitle("請輸入"); //設置對話框標題
builder.setIcon(android.R.drawable.btn_star); //設置對話框標題前的圖標
2.創建EditText輸入框
final EditText edit = new EditText(context);
3.將輸入框賦值給Dialog,並增加確定取消按鍵
builder.setView(edit);
builder.setPositiveButton("確認", 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, "你點了取消", Toast.LENGTH_SHORT).show();
}
});
4.設置常用api,並show彈出
builder.setCancelable(true); //設置按鈕是否可以按返回鍵取消,false則不可以取消
AlertDialog dialog = builder.create(); //創建對話框
dialog.setCanceledOnTouchOutside(true); //設置彈出框失去焦點是否隱藏,即點擊屏蔽其它地方是否隱藏
dialog.show();
『陸』 如何在android程序中的任意activity彈出對話框
任意Activity彈出對話框,那你可以用service 服務中彈出一個全局的
以下是代碼
java">AlertDialog.Builderbuilder=newAlertDialog.Builder(this);
builder.setIcon(R.drawable.ic);
builder.setTitle("標題");
builder.setMessage("提示文字");
builder.setPositiveButton(R.string.btn_update,newOnClickListener(){
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//增加按鈕,回調事件
}
);
builder.setCancelable(false);//彈出框不可以換返回鍵取消
AlertDialogdialog=builder.create();
dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);//將彈出框設置為全局
dialog.setCanceledOnTouchOutside(false);//失去焦點不會消失
dialog.show();
『柒』 android如何實現一個彈出輸入對話框呢
AlertDialog.Builderbuilder=newAlertDialog.Builder(context);
builder.setTitle("提示");
builder.setMessage("恭喜你,注冊成功!");
builder.setPositiveButton("去登錄",newDialogInterface.OnClickListener(){ //增加一個成功按鈕,並增加點擊事件
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//點擊去登錄的操作
}
});
builder.setNegativeButton("繼續注冊",newDialogInterface.OnClickListener(){ //增加一個中間的按鈕,並增加點擊事件
@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
//點擊繼續注冊的操作
}
});
builder.setCancelable(false); //彈出框不可以按返回取消
AlertDialogdialog=builder.create(); //創建對話框
dialog.setCanceledOnTouchOutside(false); //設置對話框失去焦點不會消息
dialog.show(); //彈出
『捌』 android中怎樣消息提示框
在Android開發中,顯示消息框有多種方法。
一、使用Toast顯示提示信息框
Toast是一種非常方便的提示消息框,他會在程序界面上顯示一個簡單的提示信息,這個提示信息框用於向用戶生成簡單的提示信息,它具有兩個特點。
1. Toast提示信息不會獲得焦點,
2. Toast提示信息過一段時間會自動消失
使用Toast來生成提示消息也非常簡單,只要如下幾個步驟:
1. 調用Toast的構造器或makeText方法創建一個Toast對象。
2. 調用Toast的方法來設置該消息提示的對齊方式,頁邊距,顯示內容等。
3. 調用Toast的show()方法,將他顯示出來。
Toast的功能和用法都比較簡單,大部分時候他只能顯示簡單的額文本提示如果應用需要顯示諸如圖片,列表之類的復雜提示,一般建議使用對話框完成,如果開發者確實想通過Toast來完成,也是可以的,Toast提供了一個setView()方法,該方法允許開發者自己定義Toast顯示的內容。
下面貼一個例子代碼:
package org.crazyit.toast;
import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.Toast;
public class ToastTest extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button simple = (Button)findViewById(R.id.simple); //為按鈕的單擊事件綁定事件監聽器
simple.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View source) {
//創建一個Toast提示信息
Toast toast = Toast.makeText(ToastTest.this,
"簡單的提示信息"
// 設置該Toast提示信息的持續時間,
Toast.LENGTH_SHORT);
toast.show();
}
});
Button bn = (Button)findViewById(R.id.bn);
//為按鈕的單擊事件綁定事件監聽器
bn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View source) {
//創建一個Toast提示信息
Toast toast = Toast.makeText(ToastTest.this,
"帶圖片的的提示信息"
// 設置該Toast提示信息的持續時間 ,
Toast.LENGTH_LONG);
toast.setGravity(Gravity.CENTER, 0, 0);
//獲取Toast提示里原有的View
View toastView = toast.getView();
//創建一個ImageView
ImageView image = new ImageView(ToastTest.this);
image.setImageResource(R.drawable.tools);
//創建一個LinearLayout容器
LinearLayout ll = new LinearLayout(ToastTest.this);
//向LinearLayout中添加圖片、原有的View
ll.addView(image);
ll.addView(toastView);
toast.setView(ll);
toast.show();
}
});
}
}
二、使用Builder對象
Builder dlg=new Builder(ServerInfoUpdate.this);
dlg.setTitle("Error");
dlg.setMessage("Unknown error.");
dlg.show();
三、使用AlertDialog對象
// 一個簡單的彈出對話框
return new AlertDialog.Builder(this).setTitle("這是一個簡單的彈出對話框的 Demo")
.create();
// 一個相對復雜的彈出對話框
return new AlertDialog.Builder(this)
.setTitle("標題") // 設置標題
// .setCustomTitle(View) // 以一個 View 作為標題
.setIcon(R.drawable.icon01) // 設置標題圖片
// .setMessage("信息") // 需要顯示的彈出內容
.setPositiveButton("確定", new OnClickListener() { // 設置彈框的確認按鈕所顯示的文本,以及單擊按鈕後的響應行為
@Override
public void onClick(DialogInterface a0, int a1) {
TextView txtMsg = (TextView) Main.this.findViewById(R.id.txtMsg);
txtMsg.append("單擊了對話框上的「確認」按鈕\n");
}
})
.setItems(R.array.ary, new DialogInterface.OnClickListener() { // 彈框所顯示的內容來自一個數組。數組中的數據會一行一行地依次排列
public void onClick(DialogInterface dialog, int which) {
}
})
// 其他常用方法如下
// .setMultiChoiceItems(arg0, arg1, arg2)
// .setSingleChoiceItems(arg0, arg1, arg2)
// .setNeutralButton(arg0, arg1)
// .setNegativeButton(arg0, arg1)
.create();
四、彈出進度條對話框
ProgressDialog progress = new ProgressDialog(this);
progress.setMessage("loading...");
return progress;