这个是是在屏幕中间弹出框显示,把弹出框进行了封装
**
* 显示信息的dialog
* @author www
*
*/
public class ShowMsgDialog extends Dialog implements OnClickListener {
private LayoutInflater factory;
private TextView dialogtitle, showmsg;
private Button confirm, cancel;
private String title, msg; // 显示的信息
public ShowMsgDialog(Context context, String title, String msg) {
super(context);
factory = LayoutInflater.from(context);
this.title = title;
this.msg = msg;
}
public ShowMsgDialog(Context context, int theme) {
super(context, theme);
factory = LayoutInflater.from(context);
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.requestWindowFeature(Window.FEATURE_NO_TITLE);// 去标题
this.setContentView(factory.inflate(R.layout.showmsgdialog, null));
dialogtitle = (TextView) this.findViewById(R.id.dialogtitle);
showmsg = (TextView) this.findViewById(R.id.showmsg);
confirm = (Button) this.findViewById(R.id.confirm);
cancel = (Button) this.findViewById(R.id.cancel);
if(title!=null && !title.equals("")) {
dialogtitle.setText(title);
}
if(msg!=null && !msg.equals("")) {
showmsg.setText(msg);
}
confirm.setOnClickListener(this);
cancel.setOnClickListener(this);
}
@Override
public void onClick(View v) {
int id = v.getId();
if (id == R.id.confirm) { // 确定
doConfirmUp();
} else if (id == R.id.cancel) {
dismiss();
}
}
public void doConfirmUp() {
}
}
xml文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="320dp"
android:layout_height="fill_parent"
android:background="#ffffff"
android:orientation="vertical" >
<TextView
android:id="@+id/dialogtitle"
android:layout_width="280dp"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:padding="10dp"
android:text="提示"
android:textColor="#000000"
android:textSize="18sp" />
<View
android:layout_width="270dp"
android:layout_height="0.7dip"
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:background="#e1e1e1" />
<LinearLayout
android:layout_width="280dp"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="10dp" >
<TextView
android:id="@+id/showmsg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="显示数据"
android:textColor="#000000"
android:textSize="16sp" />
</LinearLayout>
<LinearLayout
android:layout_width="280dp"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal"
android:paddingBottom="15dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="5dp" >
<Button
android:id="@+id/cancel"
android:layout_width="110dp"
android:layout_height="36dp"
android:background="@drawable/myord_tous"
android:text="取消"
android:textColor="#000000"
android:textSize="16sp" />
<Button
android:id="@+id/confirm"
android:layout_width="110dp"
android:layout_height="36dp"
android:layout_marginLeft="20dp"
android:background="@drawable/myord_tous"
android:text="确认"
android:textColor="#000000"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
然后在类中直接调用就可以:
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showDialog();
}
});
}
// 弹出更新的版本
private void showDialog() {
ShowMsgDialog MyupDialog = new ShowMsgDialog(MainActivity.this,
"标题名", "内容名称【弹出对话框】") {
// 选择修改
@Override
public void doConfirmUp() {
dismiss();
}
};
MyupDialog.show();
}