自定义对话框Dialog
来源:互联网 发布:免费网络电话软件排名 编辑:程序博客网 时间:2024/05/18 05:37
public void exit() {
utils.showConfirm(context, new ButtonClickEvent() {
@Override
public void onConfirmButtonClick() {
backFile();
utils.selectDialog.setDismiss();
}
@Override
public void onCancleButtonClick() {
utils.selectDialog.setDismiss();
}
}, null, null, 1, null);
}
------------------------------------------------------------------------------------------------
public static void showConfirm(Context context, ButtonClickEvent event,
String btnConfrim, String btnCancle, int pos,String parm) {
selectDialog = new SelectDialog(context, R.style.exitdialog);
selectDialog.setView(pos, R.layout.dialog,parm);
if (pos == 0) {
selectDialog.setOnKeyListener(new OnKeyListener() {
@Override
public boolean onKey(DialogInterface arg0, int arg1,
KeyEvent arg2) {
// TODO Auto-generated method stub
if (arg2.getAction() == KeyEvent.ACTION_DOWN) {
if (arg1 == KeyEvent.KEYCODE_BACK) {
try {
System.exit(0);
} catch (Exception e) {
// TODO: handle exception
}
}
}
return false;
}
});
}
selectDialog.setConfirmButton(btnConfrim, event);
selectDialog.setCancleButton(btnCancle, event);
selectDialog.show();
}
------------------------------------------------------------------------------------------------
public class SelectDialog extends Dialog {
Context mcontext;
public boolean isShowing = true;
protected SelectDialog(Context context) {
super(context);
mcontext = context;
// TODO Auto-generated constructor stub
}
public SelectDialog(Context context, int theme) {
super(context, theme);
mcontext = context;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
public void setView(int pos, int layout,String parm) {
View v = LayoutInflater.from(mcontext).inflate(layout, null);
TextView tv = (TextView) v.findViewById(R.id.breakInfo);
Button sure = (Button) v.findViewById(R.id.sure);
Button cancel = (Button) v.findViewById(R.id.cancel);
switch (pos) {
case 0:
break;
case 1:
tv.setText(mcontext.getString(R.string.videoplayer));
sure.setText(mcontext.getString(R.string.confirm));
cancel.setText(mcontext.getString(R.string.backbtn));
this.setContentView(v);
break;
}
}
public Button setConfirmButton(String btn, final ButtonClickEvent event) {
Button button = (Button) this.findViewById(R.id.sure);
if (button == null) {
return null;
}
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (null != event) {
event.onConfirmButtonClick();
}
}
});
return button;
}
public void setCancleButton(String btn, final ButtonClickEvent event) {
Button button = (Button) this.findViewById(R.id.cancel);
if (button == null) {
return;
}
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (null != event) {
event.onCancleButtonClick();
}
}
});
}
public void setDismiss() {
SelectDialog.this.dismiss();
isShowing = false;
}
public interface ButtonClickEvent {
public void onConfirmButtonClick();
public void onCancleButtonClick();
}
}
------------------------------------------------------------------------------------------------
<style name="exitdialog" parent="android: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:windowContentOverlay">@null</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowBackground">@color/white</item>
</style>
android:backgroundDimEnabled背景是否变亮或暗
------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:gravity="center" android:orientation="vertical"
android:layout_width="fill_parent" android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout android:orientation="vertical"
android:layout_width="470.0px" android:layout_height="wrap_content">
<LinearLayout android:orientation="horizontal"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:layout_marginLeft="20.0px" android:layout_marginTop="20.0px">
<ImageView android:layout_width="wrap_content"
android:layout_height="wrap_content" android:src="@drawable/infor_icon" />
<TextView android:textSize="20.0sp" android:textColor="@android:color/black"
android:gravity="left" android:layout_gravity="center_horizontal"
android:id="@+id/breakInfo" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_marginLeft="20.0px"
android:layout_marginRight="20.0px" />
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_marginTop="20.0px" android:layout_marginBottom="20.0px">
<Button android:textSize="20.0sp" android:textColor="@android:color/black"
android:gravity="center" android:id="@+id/sure" android:background="@drawable/sy_button_selector"
android:layout_width="130.0px" android:layout_height="40.0px"
android:layout_marginLeft="40.0px" />
<Button android:textSize="20.0sp" android:textColor="@android:color/black"
android:gravity="center" android:id="@+id/cancel"
android:background="@drawable/sy_button_selector"
android:layout_width="130.0px" android:layout_height="40.0px"
android:layout_marginLeft="90.0px" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
- Dialog对话框以及自定义Dialog
- Android Dialog( 自定义对话框)
- Android自定义Dialog对话框
- Android 自定义Dialog对话框
- 自定义对话框Dialog
- Android 自定义对话框Dialog
- Android自定义对话框(Dialog)
- 自定义对话框Dialog
- 【android】自定义dialog对话框
- Dialog对话框的自定义
- Dialog 之自定义对话框
- Android 自定义对话框dialog
- 自定义对话框 Dialog
- 自定义Dialog对话框
- android 自定义对话框 Dialog
- 自定义dialog对话框
- Android自定义Dialog对话框
- 自定义对话框Dialog
- 实战剖析三层架构1:概述
- EPP3 php项目文件打开中文乱码 完美解决方案
- 汇编实验(四)
- HttpClient 4.3教程
- Ajax的使用
- 自定义对话框Dialog
- 会场安排问题(贪心算法)
- ios代码大全】代码例子区全区搜索索引
- 枚举
- 线程同步锁对象不同导致的安全问题及解决办法
- 实战剖析三层架构3:不要说BLL没有用
- Property type 'id<xxxxTabBarDelegate>' is incompatible with type 'id<UITabBarDelegate>' inherited fr
- 杨辉三角
- codeforces#280(div2)