Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android使用Dialog風格彈出框的Activity

Android使用Dialog風格彈出框的Activity

編輯:關於Android編程

在Android中經常會遇到需要使用Dialog風格彈出框的activity,首先我們可能會首先想到的是在XML布局文件中設置android:layout_height="wrap_content"屬性,讓activity的高度自適應,顯然這還不行,我們還需要為其DialogActivity設置自定義一個樣式 

<style name="dialogstyle">
  <!--設置dialog的背景-->
  <item name="android:windowBackground">@android:color/transparent</item>
  <!--設置Dialog的windowFrame框為無-->
  <item name="android:windowFrame">@null</item>
  <!--設置無標題-->
  <item name="android:windowNoTitle">true</item>
  <!--是否浮現在activity之上-->
  <item name="android:windowIsFloating">true</item>
  <!--是否半透明-->
  <item name="android:windowIsTranslucent">true</item>
  <!--設置窗口內容不覆蓋-->
  <item name="android:windowContentOverlay">@null</item>
  <!--設置動畫,在這裡使用讓它繼承系統的Animation.Dialog-->
  <item name="android:windowAnimationStyle">@android:style/Animation.Dialog</item>
  <!--背景是否模糊顯示-->
  <item name="android:backgroundDimEnabled">true</item>
 </style>

然後在AndroidManifest.xml中設置DialogActivity的樣式為我們自定義的dialogstyle

如下是布局的代碼 

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android:background="@color/white"
 android:orientation="vertical">

 <LinearLayout
  android:layout_width="match_parent"
  android:layout_height="65dp"
  android:orientation="horizontal"
  android:paddingLeft="@dimen/acitvity_margin"
  android:paddingRight="@dimen/acitvity_margin">

  <LinearLayout
   android:layout_width="0dp"
   android:layout_height="match_parent"
   android:layout_weight="1"
   android:orientation="horizontal">

   <TextView
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:gravity="center"
    android:text="上班時間:"
    android:textColor="@color/grey"
    android:textSize="@dimen/size_text_medium" />

   <Button
    android:id="@+id/tv_signin_time"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="@color/white"
    android:gravity="center"
    android:text="9:00"
    android:textColor="@color/grey"
    android:textSize="@dimen/size_text_medium" />
  </LinearLayout>

  <LinearLayout
   android:layout_width="0dp"
   android:layout_height="match_parent"
   android:layout_weight="1"
   android:orientation="horizontal">

   <TextView
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:gravity="center"
    android:text="下班時間:"
    android:textColor="@color/grey"
    android:textSize="@dimen/size_text_medium" />

   <Button
    android:id="@+id/tv_signout_time"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:background="@color/white"
    android:gravity="center"
    android:text="18:00"
    android:textColor="@color/grey"
    android:textSize="@dimen/size_text_medium" />
  </LinearLayout>
 </LinearLayout>

 <RelativeLayout
  android:layout_width="match_parent"
  android:layout_height="65dp"
  android:paddingLeft="@dimen/acitvity_margin"
  android:paddingRight="@dimen/acitvity_margin">

  <TextView
   android:layout_width="wrap_content"
   android:layout_height="match_parent"
   android:layout_alignParentLeft="true"
   android:gravity="center"
   android:text="公司位置:"
   android:textColor="@color/grey"
   android:textSize="@dimen/size_text_medium" />

  <EditText
   android:id="@+id/et_address"
   android:layout_width="wrap_content"
   android:layout_height="match_parent"
   android:layout_marginLeft="2dp"
   android:layout_toRightOf="@+id/tv_address"
   android:background="@color/white"
   android:hint="請輸入公司位置"
   android:singleLine="true"
   android:textSize="@dimen/size_text_small" />

  <TextView
   android:id="@+id/tv_location"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:layout_alignParentRight="true"
   android:layout_centerInParent="true"
   android:gravity="center"
   android:padding="5dp"
   android:text="重新定位"
   android:textColor="@color/blue"
   android:textSize="@dimen/size_text_medium" />
 </RelativeLayout>

 <RelativeLayout
  android:layout_width="match_parent"
  android:layout_height="65dp"
  android:paddingLeft="@dimen/acitvity_margin"
  android:paddingRight="@dimen/acitvity_margin">

  <TextView
   android:layout_width="wrap_content"
   android:layout_height="match_parent"
   android:layout_alignParentLeft="true"
   android:gravity="center"
   android:text="設置管理員:"
   android:textColor="@color/grey"
   android:textSize="@dimen/size_text_medium" />

  <ImageView
   android:layout_width="wrap_content"
   android:layout_height="match_parent"
   android:layout_alignParentRight="true"
   android:gravity="center"
   android:src="@mipmap/icon_toright" />
 </RelativeLayout>
</LinearLayout> 

接下來我們再看一下效果圖是不是我們想要的呢

源碼下載:http://xiazai.jb51.net/201609/yuanma/DialogActivity(jb51.net).rar

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持本站。

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved