常见问题杂记

1.3 引用资源时使用@还是?的问题

关于在引用资源时使用@还是?的问题,我们在设置style的时候既可以使用@也可以使用?, 例如android:textAppearance="@andorid:style/TextAppearance.Medium",

android:textAppearance="?android:attr/textAppearanceMedium"

使用@表示使用固定的style,而不会跟随Theme改变,这个style可以在style.xml中找到。

而?表示从Theme中查找引用的资源名

1.3.1 attrs.xml常见问题:

1.3.1_1、<declare-styleable> 这个标签的作用到底是什么??

declare-styleable标签的作用:方便在程序中获取该标签下的属性数组。可以通过R.styleable.name方式获取属性数组,可以通过R.styleable.styleablename_attrname获取某一个属性。

1.3.1_2、包含在<declare-styleable>标签内的属性和不包含在该标签内的属性有什么区别??

获取方式不同,在declare-styleable标签内的属性可以作为一个数值,一次获取。

1.3.3_3、布局文件中自定义名字空间可以随便起前缀名字吗??

网上查了一下说名字空间的名字可以随便起,可是我尝试了却不行。

比如attrs.xml中定义了一些属性

<declare-styleable name="ProgressWheel">

<attr name="text" format="string" />

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

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

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

</declare-styleable>

布局文件中自定义名字空间

<RelativeLayoutxmlns:android="http://schemas.android.com/apk/res/android"

xmlns:progre="http://schemas.android.com/apk/res-auto"

……

>

<com.todddavies.components.progressbar.progre

android:layout_width="100dp"

android:layout_height="100dp"

progre:barColor="#FF5601"

progre:textColor="#222222"

/>

</RelativeLayout>

我这边将ProgressWheel换成progre程序报错说是找不到资源progre

我使用ProgressWheel作为名字空间就没有问题。

更多相关文章

  1. Android之布局属性
  2. TextView中ellipsize属性焦点异常处理
  3. android中GridView关于间距的属性值介绍
  4. Android AndroidManifest.xml文件的android:supportsRtl属性详解
  5. 安卓开发38:安卓的滚动条相关属性
  6. RelativeLayout的16种特有属性
  7. Android 属性动画简介
  8. EditText属性简介

随机推荐

  1. android 使用crt/cer/pem格式的公钥证书
  2. Android(安卓)环境搭建(没有那么困难好不!!!)
  3. ESC/POS指令集在Android设备上使用实例(通
  4. Android中MVP模式
  5. TextView最大长度限制,超出部分省略号显示
  6. Android 学习笔记(4)—— ToggleButton 、S
  7. Android(安卓)— 运行时权限检查
  8. Android(安卓)Volley入门到精通:初识Volle
  9. android HAL 详解
  10. Android多线程:理解和简单使用总结