編輯:關於android開發
做Android應用中,最缺少不了的就是自定義Dialog,對於系統默認提供的Dialog樣式,一般都不復合我們應用的樣式。
自定義Dialog需要3步驟即可:
1、主要的重寫Dialog的Java類
2、自定義布局文件、並設置Dialog Theme,在style.xml文件中加一個即可
3、使用方法
一、創建CustomPopDialog2.java類
import android.app.Dialog;
import android.content.Context;
import android.graphics.Bitmap;
import android.view.LayoutInflater;
import android.view.View;
import android.view.WindowManager.LayoutParams;
import android.widget.ImageView;
/**
* 該自定義Dialog應用在:彈出框居中顯示圖片,點擊其他區域自動關閉Dialog
*
* @author SHANHY([email protected])
* @date 2015年12月4日
*/
public class CustomPopDialog2 extends Dialog {
public CustomPopDialog2(Context context) {
super(context);
}
public CustomPopDialog2(Context context, int theme) {
super(context, theme);
}
public static class Builder {
private Context context;
private Bitmap image;
public Builder(Context context) {
this.context = context;
}
public Bitmap getImage() {
return image;
}
public void setImage(Bitmap image) {
this.image = image;
}
public CustomPopDialog2 create() {
LayoutInflater inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
final CustomPopDialog2 dialog = new CustomPopDialog2(context,R.style.Dialog);
View layout = inflater.inflate(R.layout.dialog_share_qrcode, null);
dialog.addContentView(layout, new LayoutParams(
android.view.ViewGroup.LayoutParams.WRAP_CONTENT
, android.view.ViewGroup.LayoutParams.WRAP_CONTENT));
dialog.setContentView(layout);
ImageView img = (ImageView)layout.findViewById(R.id.img_qrcode);
img.setImageBitmap(getImage());
return dialog;
}
}
}
這裡簡單說明下,我們自定義Dialog需要准備一個自己的View布局文件,主要關注create()方法即可,本例中就是直接顯示一個圖片。
二、自定義View的布局文件、並在style.xml中添加theme
三、使用自定義的Dialog
Bitmap bitmap = xxxxx;// 這裡是獲取圖片Bitmap,也可以傳入其他參數到Dialog中
CustomPopDialog2.Builder dialogBuild = new CustomPopDialog2.Builder(context);
dialogBuild.setImage(bitmap);
CustomPopDialog2 dialog = dialogBuild.create();
dialog.setCanceledOnTouchOutside(true);// 點擊外部區域關閉
dialog.show();
最終效果圖:
Android中使用開源框架Fresco處理圖片,本文為原創博文,轉載請注明原文鏈接:http://www.cnblogs.com/panhouye/p/6278116.
Android面試准備 第二天 第五例 數據存儲 5、Activity用SharedPreferences保存數據,大小有木有限制? 個人理解:SharedPrefere
[Android]Activity的生命周期 想要學好安卓開發,就必須理解安卓軟件的生命周期,明白一個活動的創建、啟動、停止、暫停、重啟和銷毀的過程,知道各個階段會調用
56.EasyLikeArea EasyLikeArea Easy like area in the circle of friends or QQ qzone