android中dialog工具类的实现(多种dialog的创建)

第一种:bitmapDialog的建立

javademo1:

package com.demo.dialog;

import android.app.Dialog;
import android.content.Context;
import android.graphics.Bitmap;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewTreeObserver;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;

/**
 * Create custom Dialog windows for your application Custom dialogs rely on
 * custom layouts wich allow you to create and use your own look & feel.
 **/
public class BitmapDialog extends Dialog {

	public BitmapDialog(Context context, int theme) {
		super(context, theme);
	}

	public BitmapDialog(Context context) {
		super(context);

	}

	/**
	 * Helper class for creating a custom dialog
	 */
	public static class Builder {
		@SuppressWarnings("unused")
		private ViewTreeObserver viewTreeObserver;
		private Context context;

		private View contentView;

		private ImageView img;

		private Bitmap bitmap;

		public Builder(Context context) {

			this.context = context;

		}

		public Builder setBitmap(Bitmap bit) {
			this.bitmap = bit;
			return this;
		}

		public Builder setContentView(View v) {

			this.contentView = v;

			return this;

		}

		/**
		 * 
		 * Create the custom dialog
		 */

		public BitmapDialog create() {

			LayoutInflater inflater = (LayoutInflater) context

			.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

			// instantiate the dialog with the custom Theme

			final BitmapDialog dialog = new BitmapDialog(context,

			R.style.Dialog);

			View layout = inflater.inflate(R.layout.bitmap_dialog_layout, null);
			dialog.addContentView(layout, new LayoutParams(

			LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

			if (bitmap != null) {

				img = (ImageView) layout
						.findViewById(R.id.bitmap_dialog_imageview);
				img.setImageBitmap(bitmap);
			}
			if (contentView != null) {

				// if no message set

				// add the contentView to the dialog body

				((LinearLayout) layout.findViewById(R.id.content))

				.removeAllViews();

				((LinearLayout) layout.findViewById(R.id.content))

				.addView(contentView,

				new LayoutParams(

				LayoutParams.WRAP_CONTENT,

				LayoutParams.WRAP_CONTENT));

			}

			dialog.setContentView(layout);

			return dialog;

		}
	}

}
javaDemo2
package com.demo.dialog;

import android.content.Context;
import android.graphics.Bitmap;

/*自定义Dialog方法*/
public class BitmapHelper {

	public static BitmapDialog createDialog(Context context, Bitmap bitmap) {
		BitmapDialog.Builder dialogBuilder = new BitmapDialog.Builder(context);
		dialogBuilder.setBitmap(bitmap);
		return dialogBuilder.create();
	}
}

第二种:customDialog的建立:

javademo1:

package com.demo.dialog;

import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.widget.Button;
import android.widget.LinearLayout;
import android.widget.TextView;

/**
 * Create custom Dialog windows for your application Custom dialogs rely on
 * custom layouts wich allow you to create and use your own look & feel.
 **/
public class CustomDialog extends Dialog {

	public CustomDialog(Context context, int theme) {
		super(context, theme);
	}

	public CustomDialog(Context context) {
		super(context);

	}

	/**
	 * Helper class for creating a custom dialog
	 */
	public static class Builder {

		private Context context;

		private String message;

		private String positiveButtonText;

		private String negativeButtonText;

		private View contentView;

		private boolean isWaitDialog;

		private DialogInterface.OnClickListener

		positiveButtonClickListener,

		negativeButtonClickListener;

		public Builder(Context context) {

			this.context = context;

		}

		/**
		 * 
		 * Set the Dialog message from String
		 * 
		 * @param title
		 * 
		 * @return
		 */

		public Builder setMessage(String message) {

			this.message = message;

			return this;

		}

		public Builder setWiatDialog(boolean isWaitDialog) {
			this.isWaitDialog = isWaitDialog;
			return this;
		}

		/**
		 * 
		 * Set the Dialog message from resource
		 * 
		 * @param title
		 * 
		 * @return
		 */

		public Builder setMessage(int message) {

			this.message = (String) context.getText(message);

			return this;

		}

		/**
		 * 
		 * Set a custom content view for the Dialog.
		 * 
		 * If a message is set, the contentView is not
		 * 
		 * added to the Dialog...
		 * 
		 * @param v
		 * 
		 * @return
		 */

		public Builder setContentView(View v) {

			this.contentView = v;

			return this;

		}

		/**
		 * 
		 * Set the positive button resource and it's listener
		 * 
		 * @param positiveButtonText
		 * 
		 * @param listener
		 * 
		 * @return
		 */

		public Builder setPositiveButton(int positiveButtonText,

		DialogInterface.OnClickListener listener) {

			this.positiveButtonText = (String) context

			.getText(positiveButtonText);

			this.positiveButtonClickListener = listener;

			return this;

		}

		/**
		 * 
		 * Set the positive button text and it's listener
		 * 
		 * @param positiveButtonText
		 * 
		 * @param listener
		 * 
		 * @return
		 */

		public Builder setPositiveButton(String positiveButtonText,

		DialogInterface.OnClickListener listener) {

			this.positiveButtonText = positiveButtonText;

			this.positiveButtonClickListener = listener;

			return this;

		}

		/**
		 * 
		 * Set the negative button resource and it's listener
		 * 
		 * @param negativeButtonText
		 * 
		 * @param listener
		 * 
		 * @return
		 */

		public Builder setNegativeButton(int negativeButtonText,

		DialogInterface.OnClickListener listener) {

			this.negativeButtonText = (String) context

			.getText(negativeButtonText);

			this.negativeButtonClickListener = listener;

			return this;

		}

		/**
		 * 
		 * Set the negative button text and it's listener
		 * 
		 * @param negativeButtonText
		 * 
		 * @param listener
		 * 
		 * @return
		 */

		public Builder setNegativeButton(String negativeButtonText,

		DialogInterface.OnClickListener listener) {

			this.negativeButtonText = negativeButtonText;

			this.negativeButtonClickListener = listener;

			return this;

		}

		/**
		 * 
		 * Create the custom dialog
		 */

		public CustomDialog create() {

			LayoutInflater inflater = (LayoutInflater) context

			.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

			// instantiate the dialog with the custom Theme

			final CustomDialog dialog = new CustomDialog(context,

			R.style.Dialog);

			View layout = inflater.inflate(R.layout.custom_dialog_layout, null);
			dialog.addContentView(layout, new LayoutParams(

			LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

			// set the confirm button

			if (positiveButtonText != null) {

				((Button) layout.findViewById(R.id.positiveButton))

				.setText(positiveButtonText);

				if (positiveButtonClickListener != null) {

					((Button) layout.findViewById(R.id.positiveButton))

					.setOnClickListener(new View.OnClickListener() {

						public void onClick(View v) {
							positiveButtonClickListener.onClick(dialog,
									DialogInterface.BUTTON_POSITIVE);
						}

					});

				}

			} else {

				// if no confirm button just set the visibility to GONE

				layout.findViewById(R.id.positiveButton).setVisibility(

				View.GONE);

			}

			if (isWaitDialog) {
				layout.findViewById(R.id.progressBar1).setVisibility(
						View.VISIBLE);
			} else {
				layout.findViewById(R.id.progressBar1).setVisibility(View.GONE);
			}

			// set the cancel button

			if (negativeButtonText != null) {

				((Button) layout.findViewById(R.id.negativeButton))

				.setText(negativeButtonText);

				if (negativeButtonClickListener != null) {

					((Button) layout.findViewById(R.id.negativeButton))

					.setOnClickListener(new View.OnClickListener() {

						public void onClick(View v) {
							negativeButtonClickListener.onClick(dialog,
									DialogInterface.BUTTON_NEGATIVE);
						}

					});

				}

			} else {

				// if no confirm button just set the visibility to GONE

				layout.findViewById(R.id.negativeButton).setVisibility(

				View.GONE);

			}

			// set the content message

			if (message != null) {

				((TextView) layout.findViewById(

				R.id.message)).setText(message);

			} else if (contentView != null) {

				// if no message set

				// add the contentView to the dialog body

				((LinearLayout) layout.findViewById(R.id.content))

				.removeAllViews();

				((LinearLayout) layout.findViewById(R.id.content))

				.addView(contentView,

				new LayoutParams(

				LayoutParams.WRAP_CONTENT,

				LayoutParams.WRAP_CONTENT));

			}

			dialog.setContentView(layout);

			return dialog;

		}

	}

}

javaDemo2:

package com.demo.dialog;

import android.content.Context;
import android.content.DialogInterface;

/*customdialog*/
public class CustomDialogHelper {

	public static CustomDialog createDialog(Context context, String msg) {
		CustomDialog.Builder dialogBuilder = new CustomDialog.Builder(context);
		dialogBuilder.setWiatDialog(false);
		dialogBuilder.setMessage(msg);
		return dialogBuilder.create();
	}

	public static CustomDialog createDialogWait(Context context, String msg) {
		CustomDialog.Builder dialogBuilder = new CustomDialog.Builder(context);
		dialogBuilder.setWiatDialog(true);
		dialogBuilder.setMessage(msg);
		return dialogBuilder.create();
	}

	public static CustomDialog createDialog(Context context, String title,
			String msg, String btnName) {
		CustomDialog.Builder dialogBuilder = new CustomDialog.Builder(context);
		dialogBuilder.setWiatDialog(false);
		dialogBuilder.setMessage(msg);
		dialogBuilder.setNegativeButton(btnName,
				new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						dialog.dismiss();
					}
				});
		return dialogBuilder.create();
	}

	public static CustomDialog createProgressDialog(Context context,
			String title, String msg) {
		CustomDialog.Builder dialogBuilder = new CustomDialog.Builder(context);
		dialogBuilder.setWiatDialog(true);
		dialogBuilder.setMessage(msg);
		return dialogBuilder.create();
	}

	public static CustomDialog createDialog1(Context context, String msg,
			String btnName) {
		CustomDialog.Builder dialogBuilder = new CustomDialog.Builder(context);
		dialogBuilder.setWiatDialog(false);
		dialogBuilder.setMessage(msg);
		dialogBuilder.setNegativeButton(btnName,
				new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						dialog.dismiss();
					}
				});
		return dialogBuilder.create();
	}
}
第三种:

Logdialog的建立:javaDemo1

package com.demo.dialog;

import android.app.Dialog;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.widget.LinearLayout;
import android.widget.TextView;

/**
 * Create custom Dialog windows for your application Custom dialogs rely on
 * custom layouts wich allow you to create and use your own look & feel.
 **/
public class LogDialog extends Dialog {

	public LogDialog(Context context, int theme) {
		super(context, theme);
	}

	public LogDialog(Context context) {
		super(context);

	}

	/**
	 * Helper class for creating a custom dialog
	 */
	public static class Builder {

		private Context context;

		private String message;

		private View contentView;

		public Builder(Context context) {

			this.context = context;

		}

		/**
		 * 
		 * Set the Dialog message from String
		 * 
		 * @param title
		 * 
		 * @return
		 */

		public Builder setMessage(String message) {

			this.message = message;

			return this;

		}

		/**
		 * 
		 * Set the Dialog message from resource
		 * 
		 * @param title
		 * 
		 * @return
		 */

		public Builder setMessage(int message) {

			this.message = (String) context.getText(message);

			return this;

		}

		/**
		 * 
		 * Set a custom content view for the Dialog.
		 * 
		 * If a message is set, the contentView is not
		 * 
		 * added to the Dialog...
		 * 
		 * @param v
		 * 
		 * @return
		 */

		public Builder setContentView(View v) {

			this.contentView = v;

			return this;

		}

		/**
		 * 
		 * Create the custom dialog
		 */

		public LogDialog create() {

			LayoutInflater inflater = (LayoutInflater) context

			.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

			// instantiate the dialog with the custom Theme

			final LogDialog dialog = new LogDialog(context,

			R.style.Dialog);

			View layout = inflater.inflate(R.layout.log_dialog_layout, null);
			dialog.addContentView(layout, new LayoutParams(

			LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

			// set the content message

			if (message != null) {

				((TextView) layout.findViewById(

				R.id.log_dialog_message)).setText(message);

			} else if (contentView != null) {

				// if no message set

				// add the contentView to the dialog body

				((LinearLayout) layout.findViewById(R.id.content))

				.removeAllViews();

				((LinearLayout) layout.findViewById(R.id.content))

				.addView(contentView,

				new LayoutParams(

				LayoutParams.WRAP_CONTENT,

				LayoutParams.WRAP_CONTENT));

			}

			dialog.setContentView(layout);

			return dialog;

		}

	}

}

javademo2:

package com.demo.dialog;

import android.content.Context;

public class LogDialogHelper {

	public static LogDialog createDialog(Context context, String msg) {
		LogDialog.Builder dialogBuilder = new LogDialog.Builder(context);
		dialogBuilder.setMessage(msg);
		return dialogBuilder.create();
	}

}


第四种:

progressDialog的建立:(很多类是自定义的,还没修改)

Javademo1:


import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;

/**
 * Create custom Dialog windows for your application Custom dialogs rely on
 * custom layouts wich allow you to create and use your own look & feel.
 **/
public class ProgressDialog extends Dialog {

	public ProgressDialog(Context context, int theme) {
		super(context, theme);
	}

	public ProgressDialog(Context context) {
		super(context);

	}

	/**
	 * Helper class for creating a custom dialog
	 */
	public static class Builder {

		private final int REQUESTFAIL = 0;
		private final int MEMBERCARDTHREAD = 20;
		private final int BILLTHREAD = 40;
		private final int ORDERBASETHREAD = 60;
		private final int INVOICETHREAD = 80;
		private final int UPLOADFINISH = 100;

		private Context context;

		private String message;

		private View contentView;

		private ProgressBar bar;

		private Animation animation;

		public Builder(Context context) {

			this.context = context;

		}

		public ProgressBar getBar() {
			return bar;
		}

		/**
		 * 
		 * Set the Dialog message from String
		 * 
		 * @param title
		 * 
		 * @return
		 */

		public Builder setMessage(String message) {

			this.message = message;

			return this;

		}

		/**
		 * 
		 * Set the Dialog message from resource
		 * 
		 * @param title
		 * 
		 * @return
		 */

		public Builder setMessage(int message) {

			this.message = (String) context.getText(message);

			return this;

		}

		/**
		 * 
		 * Set a custom content view for the Dialog.
		 * 
		 * If a message is set, the contentView is not
		 * 
		 * added to the Dialog...
		 * 
		 * @param v
		 * 
		 * @return
		 */

		public Builder setContentView(View v) {

			this.contentView = v;

			return this;

		}

		public ProgressDialog create() {

			LayoutInflater inflater = (LayoutInflater) context

			.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

			final ProgressDialog dialog = new ProgressDialog(context,

			R.style.Dialog);
			dialog.setCanceledOnTouchOutside(false);
			View layout = inflater.inflate(R.layout.progressdialog, null);
			dialog.addContentView(layout, new LayoutParams(

			LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

			dialog.setOnDismissListener(new OnDismissListener() {

				@Override
				public void onDismiss(DialogInterface dialog) {
					FrameMainActivity.proBool = true;
				}
			});

			Handler handler = new Handler() {
				@Override
				public void handleMessage(Message msg) {

					switch (msg.what) {
					case MEMBERCARDTHREAD:
						if (bar == null)
							FrameMainActivity.proBool = true;
						bar.incrementProgressBy(20);
						break;
					case BILLTHREAD:
						bar.incrementProgressBy(20);
						break;
					case ORDERBASETHREAD:
						bar.incrementProgressBy(10);
						break;
					case INVOICETHREAD:
						bar.incrementProgressBy(30);
						break;
					case UPLOADFINISH:
						bar.incrementProgressBy(20);
						if (dialog.isShowing())
							dialog.dismiss();
						FrameMainActivity.proBool = true;
						break;
					case REQUESTFAIL:
						if (dialog.isShowing()) {
							Toast.makeText(context, "数据更新失败,请检查网络!",
									Toast.LENGTH_SHORT).show();
							dialog.dismiss();
						}

						FrameMainActivity.proBool = true;
						break;
					}
					super.handleMessage(msg);
				}
			};
			if (message != null) {

				((TextView) layout.findViewById(

				R.id.progressdialog_txt)).setText(message);
				animation = AnimationUtils.loadAnimation(context,
						R.anim.progress_alpha);
				bar = ((ProgressBar) layout
						.findViewById(R.id.progressdialog_pro));

				bar.setAnimation(animation);

				dataThread(handler);
			}

			if (contentView != null) {

				((LinearLayout) layout.findViewById(R.id.content))

				.removeAllViews();

				((LinearLayout) layout.findViewById(R.id.content))

				.addView(contentView,

				new LayoutParams(

				LayoutParams.WRAP_CONTENT,

				LayoutParams.WRAP_CONTENT));

			}

			dialog.setContentView(layout);

			return dialog;

		}
	}

	public static void dataThread(final Handler handler) {
		Runnable runnable = new Runnable() {

			@Override
			public void run() {
				Log.d("info", "dataThread启动");
				Datasync datasync = null;
				SharepreferenceData sharepreferenceData = SharepreferenceData
						.getInstance(GabelApplication.getInstance());
				int i = 0;
				while (!FrameMainActivity.proBool) {
					try {
						Thread.sleep(1000);
						i++;
						if (i == 15) {
							handler.sendEmptyMessage(0);
							break;
						}
					} catch (InterruptedException e) {
						e.printStackTrace();
					}
					if (!sharepreferenceData.getServiceStat()) {
						continue;
					}

					if (!FrameMainActivity.proBool) {
						datasync = new MemberCardImpl();
						datasync.handlerData();
						handler.sendEmptyMessage(20);
					}

					if (!FrameMainActivity.proBool) {
						datasync = new BillPayImpl();
						datasync.handlerData();
						handler.sendEmptyMessage(40);

					}
					if (!FrameMainActivity.proBool) {
						datasync = new OrderBasicInfoImpl();
						datasync.handlerData();
						handler.sendEmptyMessage(80);

					}
					if (!FrameMainActivity.proBool) {
						datasync = new BillInvoiceLogImpl();
						datasync.handlerData();
						handler.sendEmptyMessage(100);
					}
					break;
				}
			};
		};
		new Thread(runnable).start();
	}
}
javaDemo2:

package com.demo.dialog;

import android.content.Context;

public class ProgressDialogHelper {

	public static ProgressDialog createDialog(Context context, String msg) {
		ProgressDialog.Builder dialogBuilder = new ProgressDialog.Builder(
				context);
		// dialogBuilder.setHandler(handler);
		dialogBuilder.setMessage(msg);
		return dialogBuilder.create();
	}

}


第五种:URLDialog的建立:

Javademo1:

package com.demo.dialog;

import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.LinearLayout;
import android.widget.LinearLayout.LayoutParams;

/**
 * Create custom Dialog windows for your application Custom dialogs rely on
 * custom layouts wich allow you to create and use your own look & feel.
 **/
public class SetURLDialog extends Dialog {

	public SetURLDialog(Context context, int theme) {
		super(context, theme);
	}

	public SetURLDialog(Context context) {
		super(context);

	}

	/**
	 * Helper class for creating a custom dialog
	 */
	public static class Builder {
		private EditText editText;

		private Context context;

		private String message;

		private String positiveButtonText;

		private String negativeButtonText;

		private View contentView;

		private DialogInterface.OnClickListener

		positiveButtonClickListener,

		negativeButtonClickListener;

		public Builder(Context context) {

			this.context = context;

		}

		public Builder setMessage(String message) {

			this.message = message;

			return this;

		}

		public Builder setMessage(int message) {

			this.message = (String) context.getText(message);

			return this;

		}

		public Builder setContentView(View v) {

			this.contentView = v;

			return this;

		}

		public Builder setPositiveButton(int positiveButtonText,

		DialogInterface.OnClickListener listener) {

			this.positiveButtonText = (String) context

			.getText(positiveButtonText);

			this.positiveButtonClickListener = listener;

			return this;

		}

		public Builder setPositiveButton(String positiveButtonText,

		DialogInterface.OnClickListener listener) {

			this.positiveButtonText = positiveButtonText;

			this.positiveButtonClickListener = listener;

			return this;

		}

		public Builder setNegativeButton(int negativeButtonText,

		DialogInterface.OnClickListener listener) {

			this.negativeButtonText = (String) context

			.getText(negativeButtonText);

			this.negativeButtonClickListener = listener;

			return this;

		}

		public Builder setNegativeButton(String negativeButtonText,

		DialogInterface.OnClickListener listener) {

			this.negativeButtonText = negativeButtonText;

			this.negativeButtonClickListener = listener;

			return this;

		}

		public String getEditText() {
			return editText.getText() + "";
		}

		/**
		 * 
		 * Create the custom dialog
		 */

		public SetURLDialog create() {

			LayoutInflater inflater = (LayoutInflater) context

			.getSystemService(Context.LAYOUT_INFLATER_SERVICE);

			// instantiate the dialog with the custom Theme

			final SetURLDialog dialog = new SetURLDialog(context,

			R.style.Dialog);

			View layout = inflater.inflate(
					R.layout.set_serviceurl_dialog_layout, null);
			dialog.addContentView(layout, new LayoutParams(

			LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));

			// set the confirm button

			if (positiveButtonText != null) {

				((Button) layout
						.findViewById(R.id.set_serviceurl_positiveButton))

				.setText(positiveButtonText);

				if (positiveButtonClickListener != null) {

					((Button) layout
							.findViewById(R.id.set_serviceurl_positiveButton))

					.setOnClickListener(new View.OnClickListener() {

						public void onClick(View v) {
							positiveButtonClickListener.onClick(dialog,
									DialogInterface.BUTTON_POSITIVE);
						}

					});

				}

			} else {

				// if no confirm button just set the visibility to GONE

				layout.findViewById(R.id.set_serviceurl_positiveButton)
						.setVisibility(View.GONE);

			}

			// set the cancel button

			if (negativeButtonText != null) {

				((Button) layout
						.findViewById(R.id.set_serviceurl_negativeButton))

				.setText(negativeButtonText);

				if (negativeButtonClickListener != null) {

					((Button) layout
							.findViewById(R.id.set_serviceurl_negativeButton))

					.setOnClickListener(new View.OnClickListener() {

						public void onClick(View v) {
							negativeButtonClickListener.onClick(dialog,
									DialogInterface.BUTTON_NEGATIVE);
						}

					});

				}

			} else {

				// if no confirm button just set the visibility to GONE

				layout.findViewById(R.id.set_serviceurl_negativeButton)
						.setVisibility(View.GONE);

			}

			// set the content message

			if (message != null) {

				editText = ((EditText) layout
						.findViewById(R.id.set_serviceurl_edit));
				editText.setText(message);
			} else if (contentView != null) {

				// if no message set

				// add the contentView to the dialog body

				((LinearLayout) layout.findViewById(R.id.content))

				.removeAllViews();

				((LinearLayout) layout.findViewById(R.id.content))

				.addView(contentView,

				new LayoutParams(

				LayoutParams.WRAP_CONTENT,

				LayoutParams.WRAP_CONTENT));

			}

			dialog.setContentView(layout);

			return dialog;

		}
	}

}

javaDemo2:

package com.demo.dialog;


import android.content.Context;
import android.content.DialogInterface;
import android.widget.Toast;


/*自定义Dialog方法*/
public class SetURLDialogHelper {


	public static SetURLDialog createDialog(final Context context, String msg) {
		final SetURLDialog.Builder dialogBuilder = new SetURLDialog.Builder(
				context);
		dialogBuilder.setMessage(msg);
		dialogBuilder.setNegativeButton("取消",
				new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						Toast.makeText(context, "取消保存", Toast.LENGTH_SHORT)
								.show();
						dialog.dismiss();
					}
				});
		dialogBuilder.setPositiveButton("确定",
				new DialogInterface.OnClickListener() {
					public void onClick(DialogInterface dialog, int which) {
						SharepreferenceData.getInstance(context).setServiceURL(
								dialogBuilder.getEditText());
						Toast.makeText(context, "保存成功", Toast.LENGTH_SHORT)
								.show();
						dialog.dismiss();
					}
				});


		return dialogBuilder.create();
	}

}



你可能感兴趣的:(android)