失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 安卓自定义dialog弹窗

安卓自定义dialog弹窗

时间:2024-03-02 14:53:03

相关推荐

安卓自定义dialog弹窗

1.先设置dialog样式,style.xml

<!-- dialog样式 --><style name="DialogTheme" parent="@android:style/Theme.Dialog"><!-- 边框 --><item name="android:windowFrame">@null</item><!-- 是否浮现在activity之上 --><item name="android:windowIsFloating">true</item><!-- 半透明 --><item name="android:windowIsTranslucent">true</item><!-- 无标题 --><item name="android:windowNoTitle">true</item><item name="android:background">@android:color/transparent</item><!-- 背景透明 --><item name="android:windowBackground">@android:color/transparent</item><!-- 模糊 --><item name="android:backgroundDimEnabled">true</item><!-- 遮罩层 --><item name="android:backgroundDimAmount">0.5</item></style><!-- dialog的动画 --><style name="main_menu_animStyle"><item name="android:windowEnterAnimation">@anim/dialog_in_anim</item><item name="android:windowExitAnimation">@anim/dialog_out_anim</item></style><!--dialog的内容格式--><style name="dialog_choosetype_text"><item name="android:layout_width">match_parent</item><item name="android:layout_height">50dp</item><item name="android:gravity">center</item><item name="android:textColor">@android:color/background_dark</item><item name="android:textSize">16sp</item>

2.设置dialog的layout布局

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:background="@drawable/shape_dialog_first"android:orientation="vertical"><TextViewandroid:id="@+id/tv_kuaidi"android:text="代拿快递"style="@style/dialog_choosetype_text"/><Viewandroid:layout_width="match_parent"android:layout_height="1dp"android:background="@android:color/darker_gray" /><TextViewandroid:id="@+id/tv_xueye"android:text="学业帮助"style="@style/dialog_choosetype_text" /><Viewandroid:layout_width="match_parent"android:layout_height="1dp"android:background="@android:color/darker_gray" /><TextViewandroid:id="@+id/tv_ershou"android:text="出二手货"style="@style/dialog_choosetype_text" /><Viewandroid:layout_width="match_parent"android:layout_height="1dp"android:background="@android:color/darker_gray" /><TextViewandroid:id="@+id/tv_qita"android:text="其他"style="@style/dialog_choosetype_text"/><Viewandroid:layout_width="match_parent"android:layout_height="5dp"android:background="@android:color/darker_gray" /><TextViewandroid:id="@+id/tv_cancel"android:text="取消"style="@style/dialog_choosetype_text"/></LinearLayout>

3.在activity、fragment应用dialog 并添加监听(以下是fragment)

public void setTypeDialog() {final Dialog dialog = new Dialog(context, R.style.DialogTheme);// 设置布局View view = View.inflate(context, R.layout.dialog_choosetype_layout, null);dialog.setContentView(view);Window window = dialog.getWindow();// 设置弹出位置window.setGravity(Gravity.BOTTOM);// 设置弹出动画window.setWindowAnimations(R.style.main_menu_animStyle);// 设置对话框大小window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);dialog.show();dialog.findViewById(R.id.tv_kuaidi).setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View view) {tv_type.setText(":"+GOOD_TYPE_KUAIDI);type = GOOD_TYPE_KUAIDI;dialog.dismiss();}});

如果觉得《安卓自定义dialog弹窗》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。