So schreibe ich meine eigene benutzerdefinierte Ansicht, die einen TextView und einen EditText enthält. Was ich versuche, der Benutzer einen Textstil für jeden individuell, wie dies eingestellt zu tun ist, lassen:Akzeptieren eines Textstils für eine benutzerdefinierte Ansicht
<declare-styleable name="InputRow">
<attr name="descriptionTextStyle" format="string" />
<attr name="valueTextStyle" format="string" />
</declare-styleable>
ich gedacht funktionieren würde, so dass in XML ich sagen könnte:
app:descriptionTextStyle="bold"
app:valueTextStyle="italic"
Das Problem tritt jedoch auf, wenn ich versuche, aus dem typisierten Array zu lesen. Ich kann die Zeichenfolge erhalten:
if(typedArray.hasValue(R.styleable.InputRow_descriptionTextStyle)) {
setDescriptionTextStyle(typedArray.getString(R.styleable.InputRow_descriptionTextStyle));
}
aber wenn ich descriptionTextView.setTypeface(Typeface tf, int style)
anrufen will ich brauche einen Integer-Wert für den zweiten Parameter, die ich nicht habe.
Ich kann den Stil nicht ändern, um ein int-Format zu sein, weil dann ="bold"
ungültig wäre, so bin ich ratlos, wie man den Textstil bekommt.
siehe attrs Datei '/platforms/android-XX/data/res/Werte/attrs.xml' und finden' textStyle' –
pskink
@pskink oooh okay, ich glaube, ich bin auf etwas hier dank – AdamMc331
und doch konnte man add ' ' in deinem '' gibt es keine Möglichkeit zwei verschiedene 'android: textStyles' mit einem anderen Namen/Alias zu verwenden –
pskink