`

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"
                     />
分享到:
评论

相关推荐

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

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

    android自定义Switch控件详解

    在Android开发中,自定义控件是提升应用个性化和用户体验的重要手段之一。本文将深入探讨如何自定义一个Switch控件,让开发者可以根据自己的需求和设计风格来调整颜色、背景和其他视觉元素。 首先,我们理解一下...

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

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

    《Android自定义组件开发详解》PDF

    《Android自定义组件开发详解》

    Android自定义控件EditText使用详解

    Android自定义控件EditText使用详解 Android自定义控件EditText是Android开发中常用的控件之一,它可以满足开发者的多种需求。在本文中,我们将详细介绍Android自定义控件EditText的使用方法,包括自定义控件的分类...

    实例讲解Android自定义控件

    详解Android自定义控件属性 可以看到QQ上的ToolBar其实就是一个自定义的view,可以看到不同的界面就是简单地修改了文字而已,在第二张与第三张尤其的明显,我们就仿QQ的这个Toolbar设置一个自定义控件 在开始之前,...

    android自定义控件文档

    ### Android自定义控件知识点详解 #### 一、引言 在Android开发过程中,系统提供的标准控件往往能够满足大部分的界面设计需求。然而,在某些特定场景下,开发者可能需要更加个性化、定制化的用户界面元素来实现...

    android自定义控件LineDemo.rar

    总结,LineDemo是一个基础的Android自定义控件实例,它教会了我们如何创建一个简单但实用的自定义控件,包括定义属性、解析属性、重写`onDraw()`以及在布局中使用自定义控件。这只是一个起点,开发者可以通过这个...

    Android控件架构与自定义控件详解(四)——事件拦截机制分析

    在Android开发中,控件是...通过理解事件分发流程和自定义控件的事件处理,我们可以创建出更符合需求的用户界面,提升应用的用户体验。在实际开发中,应根据具体场景灵活运用这些机制,确保应用的交互行为符合预期。

    【eoe+Android特刊】第十九期:Android自定义控件.pdf

    ### Android自定义控件知识点详解 #### 一、Android控件基本介绍 Android平台提供了丰富的控件库,这些控件可以满足大多数应用界面设计的需求。然而,在某些情况下,开发人员可能需要创建自己的自定义控件以实现...

    Android自定义控件属性详细介绍

    Android自定义控件属性详细介绍 1. reference:参考某一资源ID。   (1)属性定义:  (2)属性使用: &lt;ImageView android:layout_width = 42dip android:layout_height = 42dip

    Android 自定义控件之第三讲:obtainStyledAttributes 系列函数详解

    本教程将深入探讨Android自定义控件中的一个重要概念——`obtainStyledAttributes`系列函数,它是如何帮助我们解析并获取XML布局文件中定义的属性值的。 `obtainStyledAttributes`函数是Android SDK中提供的一种...

    详解Android自定义控件属性

    总之,Android自定义控件的属性通过`attrs.xml`文件进行定义,然后在自定义控件的构造函数中使用`TypedArray`获取并应用这些属性。在布局文件中,可以使用这些属性来设置自定义控件的特性和样式,从而实现更加灵活的...

    Android自定义控件

    本篇文章将深入探讨Android自定义控件的相关知识,以帮助你更好地理解和实践。 首先,Android自定义控件分为两种类型:继承已有控件和绘制自己的View。前者是基于已有的Android系统控件(如TextView、ImageView等)...

    博客《PullScrollView详解(一)——自定义控件属性》对应源码

    博客《PullScrollView详解(一)——自定义控件属性》深入探讨了如何自定义这个控件,以满足特定的交互需求。通过阅读博客并分析提供的源码,我们可以学习到以下几个重要的知识点: 1. **自定义控件**:在Android中...

    Android控件架构与自定义控件详解(三)——自定义ViewGroup

    ViewGroup存在的目的就是为了对其子View进行管理,为其子View...因此,自定义ViewGroup通常需要重写onMeasure()方法来对子View进行测量,重写onLayout()方法来确定子View的位置,重写onTouchEvent()方法增加响应事件。

    Android自定义控件eBook实现翻书效果实例详解

    本文实例讲述了Android自定义控件eBook实现翻书效果的方法。分享给大家供大家参考,具体如下: 效果图: Book.java文件: package com.book; import android.app.Activity; import android.os.Bundle; import ...

    Android控件架构与自定义控件详解(二)——自定义View

    在自定义View时,我们通常会去重写onDraw()方法来绘制View的显示内容。如果该View还需要使用wrap_content属性,那么还必须重写onMeasure()方法。另外,通过自定义attrs属性,还可以设置新的属性配置值。

Global site tag (gtag.js) - Google Analytics