zoukankan      html  css  js  c++  java
  • Android-Dialog风格Activity开发

    1.设置窗口风格 : 

        ①在Manifest中设置主题属性android:theme="@android:style/Theme.Dialog",或者 Theme.Holo.Dialog.

        ②在Activity的onCreate方法中设置,必须在setContentView之前调用setTheme(android.R.style.Theme_Holo_Dialog)

    使用Theme.Holo.Dialog为Android 4.X风格,效果较佳;而Theme.Dialog风格是2.X风格,较为落伍.

    2.设置布局属性:

    在调整界面的过程中,会发现Dialog风格的Activity和AlertDialog界面效果相差较大,这主要是因为AlertDialog使用了特性的属性.

    例如:    

    Button风格 : style="?android:attr/buttonBarButtonStyle"

    Button外层Layout风格 : style="?android:attr/buttonBarStyle"

    水平分割线 : android:background="?android:attr/dividerHorizontal"

    内容字体字号 : android:textAppearance="?android:attr/textAppearanceMedium"

    以下是样例:

    <?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="match_parent"
        android:gravity="center_horizontal"
        android:orientation="vertical" >
    
        <TextView        
            android:id="@+id/live_wallpaper_dialog_content"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="5dp"
            android:layout_marginTop="5dp"
            android:gravity="center_vertical|center_horizontal"
            android:text="This is Content"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    
        <View        
            android:layout_width="match_parent"
            android:layout_height="1dp"
            android:background="?android:attr/dividerHorizontal" />
    
        <LinearLayout        
            style="?android:attr/buttonBarStyle"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:measureWithLargestChild="true" >
    
            <Button            
                android:id="@+id/live_wallpaper_dialog_cancel"
                style="?android:attr/buttonBarButtonStyle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="cancel" />
    
            <Button            
                android:id="@+id/live_wallpaper_dialog_download"
                style="?android:attr/buttonBarButtonStyle"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_weight="1"
                android:text="download" />
        </LinearLayout>
    </LinearLayout>

     

    3.如何设置点击空白处不退出Activity : 

    AlertDialog​是设置setCanceledOnTouchOutside(false)来实现的.

    而Activity是通过设置setFinishOnTouchOutside(false);来达到效果.

    版权声明:欢迎自由转载-非商用-非衍生-保持署名。作者:Benhero,博客地址:http://www.cnblogs.com/benhero/

  • 相关阅读:
    面试题 面试技巧
    面试 11-02.ES6
    面试 11-00.JavaScript高级面试
    面试 11-01.ES6:模块化的使用和编译环境
    面试 10-01.页面性能优化
    面试 09-02.js运行机制:异步和单线程
    面试 10-02.前端错误监控
    选择屏幕-SELECTION-SCREEN(二)
    ◆◆0如何创建代码模板
    行选择交互事件
  • 原文地址:https://www.cnblogs.com/benhero/p/4128917.html
Copyright © 2011-2022 走看看