MyVersionDialog.java
3.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
package com.shunzhi.parent.views;
import android.app.Dialog;
import android.content.Context;
import android.content.res.Resources;
import android.os.Bundle;
import android.text.method.ScrollingMovementMethod;
import android.util.DisplayMetrics;
import android.view.Gravity;
import android.view.View;
import android.view.Window;
import android.view.WindowManager;
import android.widget.Button;
import android.widget.TextView;
import com.shunzhi.parent.R;
/**
* 自定义dialog
* @author Mr.Xu
*
*/
public class MyVersionDialog extends Dialog {
//定义回调事件,用于dialog的点击事件
public interface OnCustomDialogListener{
public void clickSure();
public void clickCancel();
}
private OnCustomDialogListener customDialogListener;
String version = "",size="",content ="";
public MyVersionDialog(Context context, String pVerion, String pSize, String pContent, int style, OnCustomDialogListener customDialogListener) {
super(context, style);
this.customDialogListener = customDialogListener;
version = pVerion;
size = pSize;
content = pContent;
Window window = getWindow();
WindowManager.LayoutParams params = window.getAttributes();
//set width,height by density and gravity
float density = getDensity(context);
params.width = (int) (300*density);
params.height = (int) (90*density);
params.gravity = Gravity.CENTER;
//WindowManager.LayoutParams p = getWindow().getAttributes(); //获取对话框当前的参数值
//Display d = window.getDefaultDisplay(); //为获取屏幕宽、高
//p.height = (int) (d.getHeight() * 0.6); //高度设置为屏幕的0.6
//p.width = (int) (d.getWidth() * 0.95); //宽度设置为屏幕的0.95
window.setAttributes(params);
}
private float getDensity(Context context) {
Resources resources = context.getResources();
DisplayMetrics dm = resources.getDisplayMetrics();
return dm.density;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.myversiondialog);
Button clickBtn = (Button) findViewById(R.id.btnSure);
clickBtn.setOnClickListener(clickListener);
Button clearBtn = (Button) findViewById(R.id.btnCancel);
clearBtn.setOnClickListener(clearListener);
TextView txtVersionNum = (TextView) findViewById(R.id.txtVersionNum);
txtVersionNum.setText(version);
TextView txtSizeNum = (TextView) findViewById(R.id.txtSizeNum);
txtSizeNum.setText(size);
TextView txtContent = (TextView) findViewById(R.id.txtContent);
txtContent.setText(content);
txtContent.setMovementMethod(ScrollingMovementMethod.getInstance()) ;
}
private View.OnClickListener clickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
customDialogListener.clickSure();
MyVersionDialog.this.dismiss();
}
};
private View.OnClickListener clearListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
customDialogListener.clickCancel();
MyVersionDialog.this.dismiss();
}
};
}