new Button mit Style geht nicht

  • Antworten:2
Andreas Weichert
  • Forum-Beiträge: 287

07.10.2012, 20:35:17 via Website

Hallo !

Ich will Buttons dynamisch mit einem bestimmtem Stil erzeugen

B=new Button(Context, null, R.style.Button_Value);

<style name="Button_Value" parent="@android:style/Widget.Button">
<item name="android:background">@drawable/sel_button_value</item>
<item name="android:textColor">#fff</item>
<item name="android:padding">8dip</item>
<item name="android:textSize">20dp</item>
</style>

Der Stile funktioniert im Layout-Designer!
Beim dynamischen Button erzeugen wird nur der Background übernommen, aber textSize und bold z.B. nicht.
Woran kann das liegen?

Antworten
Andreas Weichert
  • Forum-Beiträge: 287

08.10.2012, 08:09:50 via Website

Sorry Korrektur:
Hatte mich versehen - den Background setzen ich später nochmal explizit. Hab ich ausgebaut.

Es wird jetzt gar kein Style übernommen!!! Bekomme ein Button ohne Rahmen und Hintergrund.

Wie erzeugt man einen Button mit new und vorgegebenem Style?

— geändert am 08.10.2012, 08:11:06

Antworten
Andreas Weichert
  • Forum-Beiträge: 287

13.10.2012, 11:37:22 via Website

Wollte meine Thread noch mal nach oben stellen.
Hat noch niemand ein Control dynamisch mit einem Style erzeugt ?

Komme mit der Doku von Google und Internetsuche nicht weiter.

Das soll alles laut Doku funktionieren
public Button (Context context) // Das geht. Style ist dann aber default
public Button (Context context, AttributeSet attrs)
public Button (Context context, AttributeSet attrs, int defStyle)

Folgendes liefert : Style ist komplex Fehler im Log.
C ist context
XmlPullParser parser = C.getResources().getXml(Style);
AttributeSet att = Xml.asAttributeSet(parser);
B=new Button(C, att);

defStyle auf ResourceID setzen liefert einen Button ohne alles (keine Rahmen, Background)

Es muß doch möglich sein einen Style auch zur Laufzeit zu verwenden!

Antworten