一、自定义对话框
- 自定义.xml布局
- 获取LayoutInflater对象
- 调用inflate()方法获取View对象
- 调用Builder对象的setView()方法设置View
- 获取输入内容或者监听点击事件等
Dialog dialog;
public void customBtnClick(View view){
LayoutInflater inflater = LayoutInflater.from(this);
View myView = inflater.inflate(R.layout.activity_custom_dialog, null);
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setView(myView);
myView.findViewById(R.id.custom_dialog_btn).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
dialog.dismiss();
Toast.makeText(custom_dialog01.this, "点击了确定", Toast.LENGTH_SHORT).show();
}
});
dialog = builder.create();
dialog.show();
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/shadow"
>
<LinearLayout android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="vertical">
<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/blue"
android:textSize="20sp"
android:textStyle="bold"
android:textColor="@color/white"
android:gravity="center_horizontal"
android:paddingTop="5dp"
android:paddingBottom="5dp"
android:text="公告"/>
<TextView android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="恭喜您恭喜您,获得我们厂家送出的宝马电动车一辆恭喜您
\n1. 获得我们厂家送出的宝马电动车一辆恭喜您,
\n2. 获得我们厂家送出的宝马电动车一辆恭喜您,
\n3. 获得我们厂家送出的宝马电动车一辆恭喜您,
\n4. 获得我们厂家送出的宝马电动车一辆,获得我们厂家送出的宝马电动车一辆。
赶紧来店领取。"
android:paddingLeft="30dp"
android:paddingRight="30dp"
android:paddingTop="20dp"
android:textSize="16sp"
android:paddingBottom="20dp"
android:lineHeight="25dp"
android:background="@color/white"
android:gravity="left"
android:textColor="#333333"/>
<Button
android:id="@+id/custom_dialog_btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="确定"
android:textColor="@color/white"
android:layout_gravity="center_horizontal"
android:layout_marginTop="10dp"
android:layout_marginBottom="10dp"
android:background="@color/blue"/>
</LinearLayout>
</LinearLayout>

二、使用PopupWindow的实现步骤
- 自定义.xml布局
- 获取LayoutInflater对象
- 调用inflate()方法和获取View对象
- 创建PopupWindow对象
- 调用PopupWindow的showAsDropDown或者showAsLocation方法显示对话框窗口
三、Activity变Dialog样式,去除标题
<style name="MyDialogII" parent="@style/Theme.AppCompat.Dialog.Alert">
<item name="android:windowBackground">@null</item>
<item name="android:windowFrame">@null</item>
<!--无标题-->
<item name="android:windowNoTitle">true</item>
<!--这个无标题才可以的-->
<item name="windowNoTitle">true</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowContentOverlay">@null</item>
<item name="android:windowIsTranslucent">false</item>
<!--背景变暗-->
<item name="android:backgroundDimEnabled">true</item>
<!--全屏,无标题-->
<item name="android:windowFullscreen">true</item>
</style>
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。