如何通过顶部的关闭按钮在Android中进行活动?

Kar*_*hik 9 android android-activity

我希望有一个活动,包括一个关闭按钮,即右上角的'x'关闭活动.任何关于此的例子都会非常有用.

Adi*_*mro 14

Activity在清单中使用透明主题制作如下:

<activity android:name=".MyDialogActivity" android:theme="@style/Theme.Transparent" />
Run Code Online (Sandbox Code Playgroud)

然后像这样定义布局:

<?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="fill_parent">
    <RelativeLayout android:orientation="vertical"
        android:layout_width="fill_parent" android:layout_height="fill_parent"
        android:layout_margin="15dp" android:padding="2dp">
        <!-- Contents will go here..-->
    </RelativeLayout>
    <Button android:layout_alignParentRight="true" android:text="X"
        android:textColor="#FFF" android:background="@drawable/round_button_background"
        android:gravity="center_vertical|center_horizontal"
        android:layout_margin="5dp" android:layout_height="25dp"
        android:layout_width="25dp" android:textSize="12sp" android:textStyle="bold"
        android:onClick="cancelActivity" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

Button在drawable中定义close的背景,如下所示:

round_button_background.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
        android:shape="oval">
    <solid android:color="#9F2200" />
    <stroke android:width="2dp" android:color="#FFF" />
</shape>
Run Code Online (Sandbox Code Playgroud)