DialogMessage是个工具类,只需要创建该对象,把需要显示到数据传到该类里显示出来,就可以直接使用。下面上代码:
package cn.com.szh.infoColloction.ui;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.view.Window;
import android.view.WindowManager;
import android.widget.TextView;
import cn.com.szh.infoColloction.R;
public class DialogMessage extends Dialog {
private TextView tv_dialogmessage_content;
private TextView tv_dialogmessage_cancel;
private TextView tv_dialogmessage_ok;
private AlertDialog alertDialog;
public DialogMessage(Context context) {
super(context);
alertDialog = new AlertDialog.Builder(context).create();
alertDialog.show();
init();
}
private void init() {
Window window = alertDialog.getWindow();
window.setContentView(R.layout.dialog_message);
tv_dialogmessage_content = (TextView) window.findViewById(R.id.tv_dialogmessage_content);
tv_dialogmessage_cancel = (TextView) window.findViewById(R.id.tv_dialogmessage_cancel);
tv_dialogmessage_ok = (TextView) window.findViewById(R.id.tv_dialogmessage_ok);
}
public DialogMessage setMessage(String message) {
tv_dialogmessage_content.setText(message);
return this;
}
public TextView getPositiveButton() {
return tv_dialogmessage_ok;
}
public TextView getNegetiveButton() {
return tv_dialogmessage_cancel;
}
public void dismiss() {
alertDialog.dismiss();
}
}
布局文件如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="260dp"
android:layout_height="120dp"
android:background="@drawable/dialog_message_shape"
android:orientation="vertical"
android:layout_gravity="center">
<TextView
android:id="@+id/tv_dialogmessage_content"
android:layout_width="260dp"
android:layout_height="79dp"
android:gravity="center"
android:text="确定要清除所选内容"
android:textAppearance="@style/style_dialogmessage_text"
/>
<TextView
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/color_low"
/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="40dp"
>
<TextView
android:id="@+id/tv_dialog_center_line"
android:layout_width="0.5dp"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:background="@color/color_low"
/>
<TextView
android:id="@+id/tv_dialogmessage_cancel"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_toLeftOf="@id/tv_dialog_center_line"
android:text="@string/cancel"
android:clickable="true"
android:gravity="center"
android:textAppearance="@style/style_dialogmessage_btn_text"
/>
<TextView
android:id="@+id/tv_dialogmessage_ok"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_toRightOf="@id/tv_dialog_center_line"
android:text="@string/ok"
android:gravity="center"
android:textAppearance="@style/style_dialogmessage_btn_text"
/>
</RelativeLayout>
</LinearLayout>
</LinearLayout>
布局文件是自定义的,可以根据需求进行修改。
用法如下:
DialogMessage dialogMessage = new DialogMessage(this);
dialogMessage.setMessage("要显示数据");
dialogMessage.getPositiveButton().setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
});
dialogMessage.getNegetiveButton().setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});