* 提示对话框视图
*/
public class PromptDialogView {
private TextView promptContent;
private Button promptClose;
public TextView getPromptContent() {
return promptContent;
}
public Button getPromptClose() {
return promptClose;
}
private View view;
public View getView() {
return view;
}
public PromptDialogView(Context context) {
LayoutInflater inflater = LayoutInflater.from(context);
view = inflater.inflate(R.layout.prompt_dialog, null);
promptContent = (TextView) view.findViewById(R.id.tv_prompt_content);
promptClose = (Button) view.findViewById(R.id.btn_prompt_close);
}
}
/**
* 提示对话框
* @author new
*
*/
public class PromptDialog extends Dialog implements OnClickListener {
private PromptDialogView promptDialogView = null;
public PromptDialog(Context context) {
super(context, R.style.customDialog);
promptDialogView = new PromptDialogView(context);
setContentView(promptDialogView.getView());
show();
setListener();
}
private void setListener() {
promptDialogView.getPromptClose().setOnClickListener(this);
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_prompt_close:
dismiss();
break;
default:
break;
}
}
}
//values目录下的styles.xml文件
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="AppTheme" parent="android:Theme.Light" />
<style name="customDialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<!-- 边框 -->
<item name="android:windowIsFloating">true</item>
<!-- 是否浮现在activity之上 -->
<item name="android:windowIsTranslucent">false</item>
<!-- 半透明 -->
<item name="android:windowNoTitle">true</item>
<!-- 无标题 -->
<item name="android:windowBackground">@color/transparent</item>
<!-- 背景透明 -->
</style>
</resources>
//layout目录下的prompt_dialog.xml文件
<?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:gravity="center"
android:orientation="vertical" >
<LinearLayout
android:layout_width="237dip"
android:layout_height="wrap_content"
android:background="@drawable/dialog_title_bg"
android:gravity="center_vertical" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dip"
android:gravity="left"
android:text="@string/prompt_title"
android:textColor="@color/white" />
</LinearLayout>
<LinearLayout
android:layout_width="235dip"
android:layout_height="wrap_content"
android:background="@drawable/dialog_bg"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="95dip"
android:gravity="center" >
<TextView
android:id="@+id/tv_prompt_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="25dip"
android:layout_marginRight="25dip"
android:gravity="center_vertical"
android:text="@string/prompt_content"
android:textColor="@color/white"
android:textSize="15sp"
android:lines="2" />
</LinearLayout>
<ImageView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/dialog_line" />
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dip"
android:layout_marginTop="5dip"
android:gravity="center"
android:orientation="horizontal" >
<Button
android:id="@+id/btn_prompt_close"
android:layout_width="100dip"
android:layout_height="35dip"
android:text="@string/prompt_close" />
</LinearLayout>
</LinearLayout>
</LinearLayout>