`

Android中自定义属性的格式详解

阅读更多
1. reference:参考某一资源ID。

    (1)属性定义:

            <declare-styleable name = "名称">

                   <attr name = "background" format = "reference" />

            </declare-styleable>

    (2)属性使用:

             <ImageView

                     android:layout_width = "42dip"
                     android:layout_height = "42dip"
                     android:background = "@drawable/图片ID"

                     />

2. color:颜色值。

    (1)属性定义:

            <declare-styleable name = "名称">

                   <attr name = "textColor" format = "color" />

            </declare-styleable>

    (2)属性使用:

            <TextView

                     android:layout_width = "42dip"
                     android:layout_height = "42dip"
                     android:textColor = "#00FF00"

                     />

3. boolean:布尔值。

    (1)属性定义:

            <declare-styleable name = "名称">

                   <attr name = "focusable" format = "boolean" />

            </declare-styleable>

    (2)属性使用:

            <Button

                    android:layout_width = "42dip"
                    android:layout_height = "42dip"

                    android:focusable = "true"

                    />

4. dimension:尺寸值。

    (1)属性定义:

            <declare-styleable name = "名称">

                   <attr name = "layout_width" format = "dimension" />

            </declare-styleable>

    (2)属性使用:

            <Button

                    android:layout_width = "42dip"
                    android:layout_height = "42dip"

                    />

5. float:浮点值。

    (1)属性定义:

            <declare-styleable name = "AlphaAnimation">

                   <attr name = "fromAlpha" format = "float" />
                   <attr name = "toAlpha" format = "float" />

            </declare-styleable>

    (2)属性使用:

            <alpha
                   android:fromAlpha = "1.0"
                   android:toAlpha = "0.7"

                   />

6. integer:整型值。

    (1)属性定义:

            <declare-styleable name = "AnimatedRotateDrawable">

                   <attr name = "visible" />
                   <attr name = "frameDuration" format="integer" />
                   <attr name = "framesCount" format="integer" />
                   <attr name = "pivotX" />
                   <attr name = "pivotY" />
                   <attr name = "drawable" />

            </declare-styleable>

    (2)属性使用:

            <animated-rotate

                   xmlns:android = "http://schemas.android.com/apk/res/android" 
                   android:drawable = "@drawable/图片ID" 
                   android:pivotX = "50%" 
                   android:pivotY = "50%" 
                   android:framesCount = "12" 
                   android:frameDuration = "100"

                   />

7. string:字符串。

    (1)属性定义:

            <declare-styleable name = "MapView">
                   <attr name = "apiKey" format = "string" />
            </declare-styleable>

    (2)属性使用:

            <com.google.android.maps.MapView
                    android:layout_width = "fill_parent"
                    android:layout_height = "fill_parent"
                    android:apiKey = "0jOkQ80oD1JL9C6HAja99uGXCRiS2CGjKO_bc_g"

                    />

8. fraction:百分数。

    (1)属性定义:

            <declare-styleable name="RotateDrawable">
                   <attr name = "visible" />
                   <attr name = "fromDegrees" format = "float" />
                   <attr name = "toDegrees" format = "float" />
                   <attr name = "pivotX" format = "fraction" />
                   <attr name = "pivotY" format = "fraction" />
                   <attr name = "drawable" />
            </declare-styleable>

    (2)属性使用:

            <rotate

                   xmlns:android = "http://schemas.android.com/apk/res/android"
               android:interpolator = "@anim/动画ID"

                   android:fromDegrees = "0"
               android:toDegrees = "360"

                   android:pivotX = "200%"

                   android:pivotY = "300%"
               android:duration = "5000"

                   android:repeatMode = "restart"

                   android:repeatCount = "infinite"

                   />

9. enum:枚举值。

    (1)属性定义:

            <declare-styleable name="名称">
                   <attr name="orientation">
                          <enum name="horizontal" value="0" />
                          <enum name="vertical" value="1" />
                   </attr>           

            </declare-styleable>

    (2)属性使用:

            <LinearLayout

                    xmlns:android = "http://schemas.android.com/apk/res/android"
                    android:orientation = "vertical"
                    android:layout_width = "fill_parent"
                    android:layout_height = "fill_parent"
                    >
            </LinearLayout>

10. flag:位或运算。

     (1)属性定义:

             <declare-styleable name="名称">
                    <attr name="windowSoftInputMode">
                            <flag name = "stateUnspecified" value = "0" />
                            <flag name = "stateUnchanged" value = "1" />
                            <flag name = "stateHidden" value = "2" />
                            <flag name = "stateAlwaysHidden" value = "3" />
                            <flag name = "stateVisible" value = "4" />
                            <flag name = "stateAlwaysVisible" value = "5" />
                            <flag name = "adjustUnspecified" value = "0x00" />
                            <flag name = "adjustResize" value = "0x10" />
                            <flag name = "adjustPan" value = "0x20" />
                            <flag name = "adjustNothing" value = "0x30" />
                     </attr>        

             </declare-styleable>

     (2)属性使用:

            <activity

                   android:name = ".StyleAndThemeActivity"
                   android:label = "@string/app_name"
                   android:windowSoftInputMode = "stateUnspecified | stateUnchanged | stateHidden">
                   <intent-filter>
                          <action android:name = "android.intent.action.MAIN" />
                          <category android:name = "android.intent.category.LAUNCHER" />
                   </intent-filter>
             </activity>

     注意:

     属性定义时可以指定多种类型值。

    (1)属性定义:

            <declare-styleable name = "名称">

                   <attr name = "background" format = "reference|color" />

            </declare-styleable>

    (2)属性使用:

             <ImageView

                     android:layout_width = "42dip"
                     android:layout_height = "42dip"
                     android:background = "@drawable/图片ID|#00FF00"

                     />



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/mayingcai1987/archive/2011/03/01/6216655.aspx
分享到:
评论

相关推荐

    Android自定义组件开发详解.docx

    【Android自定义组件开发详解】 Android自定义组件的开发是Android应用开发中的一个重要部分,它涉及到自定义View和ViewGroup的创建,以及对canvas和paint的深入理解和运用。自定义组件能够满足开发者对于UI设计的...

    Android开发之如何自定义数字键盘详解

    这篇文章是介绍Android中自定义键盘的一些套路,通过定义一个数字键盘为例,本篇的文章语言是基于Kotlin实现的,如果还没有用或者不熟悉该语言的同学,可以自己补习,我之前也写过入门文章。 效果图 github:源码...

    Android中自定义进度条详解

    总之,Android的自定义进度条涉及对`ProgressBar`控件的`android:progressDrawable`属性的修改,以及可能的`style`切换。通过理解并操作底层的XML资源文件,开发者可以创造出各种独特且富有创意的进度条效果,以满足...

    android开发教程之自定义属性用法详解

    自定义属性都存在于/value/attr.xml文件中,以如下格式存在。 代码如下: ”自定义属性名称”&gt; ”属性名称” format=”属性种类”/&gt; …… 对于自定义属性中的format的值及其含义如下: format属性值:reference 、...

    Android自定义组件开发

    在Android应用开发中,自定义组件是提升用户体验和实现独特设计的重要手段。本文将深入探讨Android自定义...提供的"超好的webview学习资料.pdf"和"Android自定义组件开发详解.pdf"可以作为进一步学习和实践的参考资料。

    android自定义Switch控件详解

    总结,自定义Switch控件涉及到对Android控件体系的理解、Drawable资源的使用、自定义属性的定义以及绘制逻辑的实现。通过这种方式,开发者可以完全控制Switch的外观和交互,为用户提供更加个性化的体验。同时,这也...

    Android自定义日历控件实例详解

    在Android开发中,自定义控件是提升应用独特性和用户体验的重要手段。...通过这个过程,开发者可以更好地理解和掌握Android自定义控件的精髓,从而在实际项目中构建出更具创新性和效率的用户界面。

    Android自定义View实例:深度剖析 水晶/水滴 波浪球 实现步骤详解

    在Android开发中,自定义View是一项重要的技能,它允许开发者创造出独特且富有表现力的UI元素,提升用户体验。本文将深度剖析如何实现一个名为“水晶/水滴 波浪球”的自定义View,并通过详细步骤讲解,帮助你掌握...

    Android开发之自定义控件用法详解

    总之,Android自定义控件是实现个性化界面和高效开发的关键技术。理解并熟练掌握自定义控件的定义和使用,对于任何Android开发者来说都是至关重要的。通过不断地实践和学习,你可以创造出更多富有创新性的用户界面,...

    Android编程自定义菜单实现方法详解

    在Android应用开发中,自定义菜单是一种常见的需求,尤其是在设计具有独特交互体验的应用时。系统默认的菜单可能无法满足所有开发者的需求,比如在屏幕底部展示超过三个菜单项,或者需要特定的动画效果。在这种情况...

    Android中XML属性与解析

    ### Android中XML属性与解析深度解析 #### 一、引言 在Android开发中,XML文件扮演着至关重要的角色,特别是在界面布局设计方面。通过理解并掌握XML的基本属性及其解析方法,开发者能够更加高效地创建出美观且功能...

    自定义控件_深度解析自定义属性

    总之,自定义属性是Android自定义控件的关键组成部分,它极大地增强了我们的开发灵活性。通过理解和熟练掌握自定义属性的定义、使用和获取,开发者可以创建出更具个性和功能性的Android应用。在实际项目中,不断实践...

    Android自定义组件一[文].pdf

    综上所述,Android自定义组件是提升应用体验和满足个性化需求的重要手段。通过熟练掌握自定义组件的创建方法和技巧,开发者能够更好地应对各种复杂场景,创造出独具特色的用户界面。在实际开发中,结合属性动画、...

    android listview 自定义样式实例

    以下将详细介绍如何在Android中实现ListView的自定义样式。 1. **自定义ListView的外观** - **自定义ListView项布局**:首先,你需要创建一个XML布局文件来定义ListView每一项的显示样式。这可以通过在`res/layout...

    Android 自定义组件开发

    在Android应用开发中,自定义组件是提升应用独特性和功能扩展性的重要手段。自定义组件允许开发者根据项目...《Android自定义组件开发详解》.pdf应该包含更多关于这个主题的详细信息,可以深入阅读以获取更全面的理解。

    android视图动画属性动画详解

    - 支持更多的动画类型,包括自定义属性动画。 - 可以改变对象的实际状态,使动画更自然。 - 能够在多个维度上同时进行动画,如位置、大小、颜色等。 总结来说,Android视图动画适用于简单的过渡效果,而属性动画则...

    Android 自定义阴影效果详解及实例

    Android 自定义阴影效果详解及实例 Android5.X中,Google为其增加了两个属性 android:elevation=” ” 与 android:translationZ=” “,对应垂直方向上的高度变化。系统会自动增加阴影效果。 在TabLayout中增加...

    Android自定义View详解

    // 获取自定义属性 TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.CustomButton); mTitleText = a.getString(R.styleable.CustomButton_titleText); mTitleTextColor = a.getColor(R....

Global site tag (gtag.js) - Google Analytics