问题描述
- dialog 的 setCanceledOnTouchOutside 方法设置
- layout xml 文件:
<?xml version=""1.0"" encoding=""utf-8""?><RelativeLayout xmlns:android=""http://schemas.android.com/apk/res/android"" android:id=""@+id/RelativeLayout1"" android:layout_width=""match_parent"" android:layout_height=""match_parent"" > <ListView android:id=""@+id/action_bar_item_list"" android:layout_above=""@+id/mybutton"" android:layout_width=""match_parent"" android:layout_height=""wrap_content"" > </ListView> <Button android:id=""@+id/mybutton"" android:layout_width=""wrap_content"" android:layout_height=""wrap_content"" android:layout_alignParentBottom=""true"" android:layout_alignParentLeft=""true"" android:layout_alignParentRight=""true"" android:text=""Button"" /> <LinearLayout android:id=""@+id/messagelayout"" android:layout_width=""wrap_content"" android:layout_height=""wrap_content"" android:layout_centerInParent=""true"" android:orientation=""vertical"" > <TextView android:id=""@+id/message"" android:layout_width=""wrap_content"" android:layout_height=""wrap_content"" android:text=""Large Text"" android:textAppearance=""?android:attr/textAppearanceLarge"" /> </LinearLayout></RelativeLayout>
如果点击 mybutton, messagelayout 就会设置为可见。
然而当 messagelayout 可见时,我想创建一个函数如一个对话框的 setCanceledOnTouchOutside,然而当用户在 messagelayout 边触屏时,就会设置messagelayout 消失。如果我不使用一个 dialog,如何实现呢?
解决方案
那就用PopupWindow吧 效果和dialog差不多 也能点击外部取消
时间: 2024-11-02 04:26:06