歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android對話框教程

Android對話框教程

日期:2017/3/1 10:39:05   编辑:Linux編程

1.1簡單提示框

[java]
  1. //簡單提示框
  2. private Dialog Dialog1(){
  3. return new AlertDialog.Builder(XXXActivity.this).setTitle("提示").setMessage("提示內容太短").show();
  4. }

1.2多個按鈕提示框

[java]
  1. @Override
  2. protected Dialog onCreateDialog(int id) {
  3. if(id == 1){//兩個按鈕提示框
  4. return new AlertDialog.Builder(XXXActivity.this)
  5. .setTitle("提示").setMessage("提示內容太短")
  6. .setPositiveButton("確定", new DialogInterface.OnClickListener() {
  7. @Override
  8. public void onClick(DialogInterface dialog, int which) {
  9. // TODO Auto-generated method stub
  10. dismissDialog(1);
  11. }
  12. })
  13. .setNegativeButton("取消", new DialogInterface.OnClickListener() {
  14. @Override
  15. public void onClick(DialogInterface dialog, int which) {
  16. // TODO Auto-generated method stub
  17. dismissDialog(1);
  18. }
  19. }).create();
  20. }else if(id == 2){//三個按鈕提示框
  21. return new AlertDialog.Builder(XXXActivity.this)
  22. .setTitle("提示").setMessage("哈哈哈哈")
  23. .setIcon(R.drawable.ic_launcher)
  24. .setPositiveButton("注冊", new DialogInterface.OnClickListener() {
  25. @Override
  26. public void onClick(DialogInterface dialog, int which) {
  27. // TODO Auto-generated method stub
  28. }
  29. })
  30. .setNeutralButton("找回密碼", new DialogInterface.OnClickListener() {
  31. //注意這裡和下面的取消是不一樣的setNeutral.....setNegative
  32. @Override
  33. public void onClick(DialogInterface dialog, int which) {
  34. // TODO Auto-generated method stub
  35. }
  36. })
  37. .setNegativeButton("取消", new DialogInterface.OnClickListener() {
  38. @Override
  39. public void onClick(DialogInterface dialog, int which) {
  40. // TODO Auto-generated method stub
  41. }
  42. }).create();
  43. }else if(id ==4){ //圓形進度框
  44. ProgressDialog dialog = new ProgressDialog(XXXActivity.this);
  45. dialog.setTitle("正在下載歌曲...");
  46. dialog.setMessage("請稍候......");
  47. return dialog;
  48. }
  49. return super.onCreateDialog(id);
  50. }
調用時showDialog(4);


1.3自定義對話框

命名xxxx.xml文件是我們想要自定義的風格

[html]
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="fill_parent"
  4. android:layout_height="wrap_content"
  5. android:orientation="vertical" >
  6. <TextView android:layout_width="wrap_content" android:layout_height="wrap_content"
  7. android:layout_marginLeft="20dip" android:layout_marginRight="20dip"
  8. android:text="請輸入..." android:gravity="left"
  9. android:textAppearance="?android:attr/textAppearanceMedium"/>
  10. <EditText android:id="@+id/testdaysnum"
  11. android:layout_height="wrap_content"
  12. android:layout_width="fill_parent"
  13. android:layout_marginLeft="20dip"
  14. android:layout_marginRight="20dip"
  15. android:scrollHorizontally="true"
  16. android:autoText="false"
  17. android:capitalize="none"
  18. android:gravity="fill_horizontal"
  19. android:textAppearance="?android:attr/textAppearanceMedium"
  20. />
  21. </LinearLayout>
Activity調用
[java]
  1. //自定義Dialog
  2. LayoutInflater factory = LayoutInflater.from(XXXActivity.this);
  3. final View testDialogView = factory.inflate(R.layout.xxxx, null);
  4. EditText edit_GetDayNum = (EditText)testDialogView.findViewById(R.id.testdaysnum);
  5. new AlertDialog.Builder(XXXActivity.this)
  6. .setTitle("提示")
  7. .setView(testDialogView)
  8. .setPositiveButton("確定", new DialogInterface.OnClickListener() {
  9. @Override
  10. public void onClick(DialogInterface dialog, int which) {
  11. // TODO Auto-generated method stub
  12. Toast.makeText(XXXActivity.this, "請等待...", Toast.LENGTH_LONG).show();
  13. }
  14. }).create().show();

1.4圓形進度框 [java]
  1. ProgressDialog m_Dialog = ProgressDialog.show(XXXActivity.this, "請等待...", "請稍候....",true);

1.5Toast

[java]
  1. Toast.makeText(XXXActivity.this, "請等待...", Toast.LENGTH_LONG).show();
1.6模式對話框
[java]
  1. Dialog dialog = new Dialog(XXXActivity.this);
  2. Window window = dialog.getWindow();
  3. window.setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,
  4. WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
  5. dialog.show();
Copyright © Linux教程網 All Rights Reserved