主要实现自定义的dialog.
代码:
//
/**
*
* 实现自定义的Dialog
*/
public class DialogTestActivity extends Activity {
Dialog myDialog = null;// Dialog对象
Button btn_showDialog;// 显示dialog
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn_showDialog = (Button) findViewById(R.id.btn_showDialog);
btn_showDialog.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
showHint("提示");
}
});
}
// /自定义的显示
protected void showHint(String strReasons) {
// 提示//
if (myDialog != null) {
myDialog.dismiss();
}
// R.style.dialog 为自定义的风格
myDialog = new Dialog(DialogTestActivity.this, R.style.dialog);
myDialog.setContentView(R.layout.messagealert);
myDialog.show();
TextView success_or_fail = (TextView) myDialog
.findViewById(R.id.success_or_fail);
success_or_fail.setText(strReasons);
Button alertbtn = (Button) myDialog.findViewById(R.id.alertbtn);
alertbtn.setOnClickListener(new OnClickListener() {
/* 设置跳出窗口的返回事件 */
@Override
public void onClick(View v) {
myDialog.dismiss();
}
});
// //
}
}
// ///布局相关/
path /DialogTest/res/layout/main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:gravity="center"
android:background="@color/white"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button
android:id="@+id/btn_showDialog"
android:textColor="@color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="showDialog"
/>
</LinearLayout>
/----------//
path /DialogTest/res/layout/messagealert.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- 带文本和一个按钮的提示框 -->
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/dialogbg">
<!-- 提示框背景↓-->
<ImageView
android:id="@+id/fst_bg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginLeft="10px"
android:src="@drawable/dialogback1"
/>
<!-- android:layout_toRightOf="@+id/fst_bg" android:layout_toLeftOf="@+id/last_bg"-->
<ImageView
android:id="@+id/sec_bg"
android:layout_width="400px"
android:layout_height="wrap_content"
android:background="@drawable/dialogback0"
android:layout_alignTop="@+id/fst_bg"
android:layout_alignBottom="@+id/fst_bg"
android:layout_marginLeft="32px"
/>
<ImageView
android:id="@+id/last_bg"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/dialogback2"
android:layout_alignTop="@+id/fst_bg"
android:layout_alignParentRight="true"
android:layout_marginRight="10px"
/>
<!-- 提示框背景 ↑-->
<!-- 成功或者失败的TextView-->
<TextView
android:id="@+id/success_or_fail"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_toRightOf="@+id/fst_bg"
android:layout_marginTop="30px"
android:textColor="@color/black"
android:text="success_or_fail">
</TextView>
<!-- 提示信息()需要用的话 在程序中设置其text-->
<TextView
android:id="@+id/alert_message"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:textColor="@color/black"
android:layout_below="@+id/success_or_fail"
android:layout_alignLeft="@+id/success_or_fail"
android:layout_marginTop="20px"
android:text="alert_message"
/>
<!-- 操作按钮 -->
<Button
android:id="@+id/alertbtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/surebtnselector"
android:visibility="visible"
android:layout_marginBottom="30px"
android:layout_alignBottom="@+id/sec_bg"
android:layout_marginLeft="30px"
/>
</RelativeLayout>
----------------------------------
path /DialogTest/res/values/dialog.xml
<!-- 自定义Dialog风格 -->
<resources>
<style name="dialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:background">@drawable/dialogbg</item>
<item name="android:windowBackground">@drawable/dialogbg</item>
<!-- 屏幕背景是否变暗 -->
<item name="android:backgroundDimEnabled">true</item>
</style>
</resources>