【发布时间】:2012-09-09 20:57:18
【问题描述】:
我正在尝试使用自定义主题来管理我的应用程序样式:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">
<style name="Theme.Styled" parent="Theme.Sherlock.Light.DarkActionBar">
<item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="actionBarTabStyle">@style/Widget.Sherlock.Light.ActionBar.TabView</item>
<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="android:textViewStyle">@style/MyTextViewStyle</item>
</style>
<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.Light.ActionBar.Solid.Inverse">
<item name="background">@drawable/background</item>
<item name="android:background">@drawable/background</item>
</style>
<style name="MyTextViewStyle" parent="@android:style/Widget.TextView">
<item name="android:textColor">@color/text</item>
</style>
</resources>
如您所见,我将 TextView 默认颜色设置为 @color/text (#ff000000)。这在我的应用程序的所有 TextViews 中都可以正常工作,除了我的自定义列表项布局中的那些:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/mov_concept"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="5dp"
android:layout_marginTop="2dp"
android:textSize="16dp"
android:textStyle="bold" />
<TextView
android:id="@+id/mov_category"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/mov_concept"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/mov_amount"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/mov_category"
android:layout_centerHorizontal="true"
android:layout_marginBottom="6dp"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/mov_period"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/mov_amount"
android:layout_marginBottom="5dp"
android:layout_marginLeft="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/mov_until"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/mov_period"
android:layout_alignBottom="@+id/mov_period"
android:layout_alignParentRight="true"
android:layout_marginBottom="2dp"
android:layout_marginRight="5dp"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/mov_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/mov_concept"
android:layout_alignBottom="@+id/mov_category"
android:layout_alignParentRight="true"
android:layout_marginRight="5dp"
android:layout_marginTop="2dp" />
</RelativeLayout>
我不知道为什么会这样,提前谢谢你。
【问题讨论】:
-
你有没有想过这个问题?遇到同样的问题
-
哦,我想我做到了,但那是前一段时间了。它与我在膨胀视图时使用的 Context 对象的类型有关(只是玩弄它)。
-
供将来参考:膨胀布局时不要使用
Application给出的Context。使用您的Activity的Context。 Here's我的回答。
标签: android android-layout android-theme