自定義Dialog對話框

自定義dialog
package com.zhiduan.crowdclient.view;
import com.zhiduan.crowdclient.MyApplication;
import com.zhiduan.crowdclient.R;
import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.view.Display;
import android.view.Gravity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.ImageView;
/** 
 * 單點登錄提示窗口(該賬號在另一設備登錄)
 * 
 * @author yxx
 *
 * @date 2016-5-3 下午10:00:31
 * 
 */
public class SingleLoginDialog{
public static boolean isShow = false;
static Dialog dialog;
// 彈窗結(jié)果回調(diào)函數(shù)
public static abstract class ResultCallback {
public abstract void callback(boolean result);
}
public SingleLoginDialog(Context context){
}
/**
 * @param context
 * @param strMessage
 */
public static void showMyDialog(Context context, final ResultCallback callback){
if(dialog != null){
dialog.dismiss();
}
dialog = new Dialog(context, R.style.dialog);
LayoutInflater inflater = dialog.getLayoutInflater();
View layout = inflater.inflate(R.layout.dialog_single_login, null);
Button btnOK = (Button) layout.findViewById(R.id.btn_single_login_ok);
ImageView img = (ImageView) layout.findViewById(R.id.p_w_picpathView1);
btnOK.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
callback.callback(true);
dialog.dismiss();
}
});
img.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
dialog.setContentView(layout);
dialog.setCancelable(false);
dialog.setCanceledOnTouchOutside(false);
dialog.show();
setDialogWindowAttr(dialog, context);
isShow = true;
}
/**
 * 關(guān)閉窗口
 */
public static void closeDialog(){
SingleLoginDialog.isShow = false;
if(dialog != null){
dialog.dismiss();
}
}

//在dialog.show()之后調(diào)用
public static void setDialogWindowAttr(Dialog dlg,Context ctx){
WindowManager wm = ((Activity) ctx).getWindowManager();
Display display = wm.getDefaultDisplay(); // 為獲取屏幕寬、高
Window window = dlg.getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.gravity = Gravity.CENTER;
lp.width = (int) (display.getWidth()/1.5);
lp.height = (int) (display.getHeight()/3);
dlg.getWindow().setAttributes(lp);
}
}

styles.xml
    <style name="dialog" parent="@android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowIsTranslucent">false</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:background">@android:color/transparent</item>
        <item name="android:windowBackground">@android:color/transparent</item>
        <!-- 隱藏標題欄 -->
        <item name="android:backgroundDimEnabled">true</item>
        <item name="android:backgroundDimAmount">0.6</item>
        <!-- 對話框外區(qū)域的灰度 -->
    </style>

分享名稱:自定義Dialog對話框
當前URL:http://bm7419.com/article18/gipegp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、靜態(tài)網(wǎng)站、網(wǎng)站導航、網(wǎng)站設計、搜索引擎優(yōu)化、服務器托管

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司