Ich sehe einen Fehler, den ich noch nie bei Android gesehen habe und der verhindert, dass einige meiner Layoutdateien in Eclipse gerendert werden. Sie rendern zur Laufzeit gut.
Der Fehler, der im grafischen Layout-Editor (und meinem Fehlerprotokoll) angezeigt wird, lautet: "Resouce-ID 0x1010081 ist nicht vom Typ STYLE (statt attr)"
Ich habe in meinen R-Dateien nach der Ressourcen-ID 0x1010081 gesucht und kann sie nicht finden. Ich vermute, dass ich möglicherweise einen Konflikt mit einem in Android integrierten attr habe. Ich habe auch bestätigt, dass alle unten aufgeführten Stilattribute auf tatsächliche Stile und nicht auf attr verweisen. Jede Hilfe geschätzt.
Hier ist mein vollständiger Layoutcode:
<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:tools="http://schemas.Android.com/tools"
Android:layout_width="match_parent"
Android:layout_height="match_parent"
Android:background="@drawable/bkg_light"
Android:padding="@dimen/padding_med" >
<RelativeLayout
Android:id="@+id/relativeLayout_activity"
Android:layout_width="fill_parent"
Android:layout_height="@dimen/button_height"
Android:background="@drawable/xml_button"
Android:padding="@dimen/padding_med" >
<TextView
style="@style/text_large_bold_white"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentLeft="true"
Android:layout_centerVertical="true"
Android:text="@string/activity" />
<TextView
Android:id="@+id/textView_activity"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_centerVertical="true"
Android:layout_marginRight="@dimen/margin_med"
Android:layout_toLeftOf="@+id/textView_arrow_right_start_date"
Android:text="@string/none_selected"/>
<TextView
Android:id="@+id/textView_arrow_right_start_date"
style="@style/arrow_right"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentRight="true"
Android:layout_centerVertical="true" />
</RelativeLayout>
<!-- kv Duration -->
<RelativeLayout
Android:id="@+id/relativeLayout_duration"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content"
Android:layout_below="@+id/relativeLayout_activity"
Android:layout_marginTop="@dimen/margin_large"
Android:background="@drawable/xml_button">
<TextView
Android:id="@+id/textView_duration"
style="@style/text_large_bold_white"
Android:layout_width="wrap_content"
Android:layout_height="wrap_content"
Android:layout_alignParentLeft="true"
Android:layout_centerVertical="true"
Android:text="@string/duration_lc"
Android:paddingLeft="@dimen/padding_med"/>
<Spinner
Android:id="@+id/spinner_duration"
Android:layout_width="wrap_content"
Android:layout_height="@dimen/button_height"
Android:layout_alignParentRight="true"
Android:entries="@array/array_durations"
Android:Prompt="@string/duration_lc"
Android:spinnerMode="dropdown"
Android:clickable="false"/>
</RelativeLayout>
</RelativeLayout>
Und hier ist meine styles.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="arrow_right">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_xxlarge</item>
<item name="Android:text">@string/arrow_right</item>
</style>
<style name="button_blue">
<item name="Android:textStyle">bold</item>
<item name="Android:textColor">@color/white</item>
<item name="Android:background">@drawable/selector_button_blue</item>
<item name="Android:padding">@dimen/padding_med</item>
</style>
<style name="button_blue_small">
<item name="Android:textStyle">bold</item>
<item name="Android:textColor">@color/white</item>
<item name="Android:background">@drawable/selector_button_blue_small</item>
<item name="Android:padding">@dimen/padding_med</item>
</style>
<style name="button_dark">
<item name="Android:textStyle">bold</item>
<item name="Android:textColor">@color/white</item>
<item name="Android:background">@drawable/selector_button_dark</item>
<item name="Android:padding">@dimen/padding_med</item>
</style>
<style name="button_light">
<item name="Android:textStyle">bold</item>
<item name="Android:textColor">@color/black</item>
<item name="Android:background">@drawable/selector_button_light</item>
<item name="Android:padding">@dimen/padding_med</item>
</style>
<style name="button_light_small">
<item name="Android:textStyle">bold</item>
<item name="Android:textColor">@color/black</item>
<item name="Android:textSize">@dimen/text_small</item>
<item name="Android:background">@drawable/selector_button_light</item>
<item name="Android:padding">@dimen/padding_small</item>
</style>
<style name="text_small_gray_light">
<item name="Android:textSize">@dimen/text_small</item>
<item name="Android:textColor">@color/gray_light</item>
</style>
<style name="text_med_bold_gray_light">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_med</item>
<item name="Android:textColor">@color/gray_light</item>
</style>
<style name="text_large_bold_white">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_large</item>
</style>
<style name="text_large_bold_black">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_large</item>
<item name="Android:textColor">@color/black</item>
</style>
<style name="text_large_bold_gray_dark">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_large</item>
<item name="Android:textColor">@color/gray_dark</item>
</style>
<style name="text_large_bold_gray_light">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_large</item>
<item name="Android:textColor">@color/gray_light</item>
</style>
<style name="text_large_bold_white">
<item name="Android:textStyle">bold</item>
<item name="Android:textSize">@dimen/text_large</item>
<item name="Android:textColor">@color/white</item>
</style>
<style name="text_large_white">
<item name="Android:textSize">@dimen/text_large</item>
<item name="Android:textColor">@color/white</item>
</style>
</resources>
Und hier ist mein benutzerdefiniertes theme.xml:
<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:Android="http://schemas.Android.com/apk/res/Android">
<style name="Theme.P90X" parent="@style/Theme.Sherlock">
<item name="Android:textColor">#ffffffff</item>
</style>
</resources>
Ich habe auch dieses Problem mit der gleichen Ressourcen-ID. Es verschwindet, wenn ich Android:spinnerMode
in "dialog"
ändere. Ich vermute, es ist kein Problem mit Ihrem Code.
Die betreffende ID bezieht sich auf das Android-Attribut spinnerStyle
. Siehe das Dokument für R.attr
Ich habe einen Workaround gefunden, nämlich ersetzen
Android:spinnerMode="dropdown"
mit
Android:spinnerStyle="@Android:style/Widget.Spinner.DropDown"
.
Haben Sie versucht, die jeweiligen Stileigenschaften so zu ändern:
style="?attr/text_large_bold_white"
Wie JulianSymes sagt, ist das Problem
Android:spinnerMode="dropdown"
Seine Lösung (ersetzen für Android:spinnerStyle="@Android:style/Widget.Spinner.DropDown"
) läuft auf meinem Telefon, aber nicht auf meinem Tablet
Meine Lösung ist einfacher: DELETE THE LINE.
spinnerMode="dropdown"
ist standardmäßig eingestellt, daher nicht erforderlich
Löschen Sie alle style
-Elemente, fügen Sie sie nacheinander hinzu und prüfen Sie immer, ob sie noch angezeigt werden. So können Sie zumindest herausfinden, wer schuld ist.
Da Google für diesen Fehler und für die Nachwelt auf diese Seite verweist ...
In meinem Fall, in einer Laune, geschlossene und wieder geöffnete Eclipseund Boom der Fehler war weg und Eclipse hatte kein Problem, die Vorschau zu rendern.
Ich glaube jedoch fest daran, dass dies nicht für alle der Fall sein kann.
Wenn Sie das Gefühl haben, dass Sie alles richtig gemacht haben , denke ich, wird es nicht schaden, Eclipse neu zu starten.