我在我的项目中添加了一个项目库,它在attrs.xml
中定义了一些自定义属性如何使用这些属性?
图书馆代码: attrs.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="NumberProgressBar">
<attr name="progress" format="integer"/>
<attr name="max" format="integer"/>
<attr name="progress_unreached_color" format="color"/>
<attr name="progress_reached_color" format="color"/>
<attr name="progress_reached_bar_height" format="dimension"/>
<attr name="progress_unreached_bar_height" format="dimension"/>
<attr name="progress_text_size" format="dimension"/>
<attr name="progress_text_color" format="color"/>
<attr name="progress_text_offset" format="dimension"/>
<attr name="progress_text_visibility" format="enum">
<enum name="visible" value="0"/>
<enum name="invisible" value="1"/>
</attr>
</declare-styleable>
<declare-styleable name="Themes">
<attr name="numberProgressBarStyle" format="reference"/>
</declare-styleable>
</resources>
我的xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:widget="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/lessens_listview_textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="3dp"
android:drawableLeft="@drawable/bbb"
android:drawablePadding="5dp"
android:text="TextView"
android:textColor="#000000"
android:textSize="26dp" />
<com.daimajia.numberprogressbar.NumberProgressBar
android:id="@+id/number_progress_bar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toRightOf="@+id/lessens_listview_textview"
android:layout_marginLeft="12dp"
custom:progress_reached_bar_height="5dp"/>
</RelativeLayout>
这里我在custom:progress_reached_bar_height="5dp"
因为图书馆的自述文件说我可以使用这样的属性,但我不能。
library自述文件:
<com.daimajia.numberprogressbar.NumberProgressBar
android:layout_width="wrap_content"
android:layout_height="wrap_content"
custom:progress_unreached_color="#CCCCCC"
custom:progress_reached_color="#3498DB"
custom:progress_unreached_bar_height="0.75dp"
custom:progress_reached_bar_height="1.5dp"
custom:progress_text_size="10sp"
custom:progress_text_color="#3498DB"
custom:progress_text_offset="1dp"
custom:progress_text_visibility="visible"
custom:max="100"
custom:progress="80"
/>
答案 0 :(得分:2)
取决于您如何声明命名空间。 在您的情况下,您已声明:
xmlns:widget="http://schemas.android.com/apk/res-auto"
这意味着您可以使用widget
作为前缀来调用属性:
widget:progress_reached_bar_height="5dp"
如果要使用custom
前缀,请以这种方式更改声明:
xmlns:custom="http://schemas.android.com/apk/res-auto"