2012-08-28 8 views
8

ich ein Widget mache, in dem Sie die TextgrößeAbsturz setTextViewTextSize in einem Widget nur ohne Jelly Bean

controles.setTextViewTextSize(R.id.LblMsg, TypedValue.COMPLEX_UNIT_SP, textSize);

ich mit Android 4,1

android:minSdkVersion="8" android:targetSdkVersion="16"

Das Problem arbeite angeben kann ist, dass es funktioniert in Android 4.1 richtig, aber in jeder anderen Version (ICS, Lebkuchen, etc) zeigt ein erzwungenes Schließen.

java.lang.NoSuchMethodError: android.widget.RemoteViews.setTextViewTextSize

Wenn ich die Zeile Code zu entfernen, wo es verwendet wird „setTextViewTextSize“, funktioniert die Anwendung perfekt.

Ich finde keine Informationen über den Grund für diesen Fehler.

Ich schätze jede Hilfe.

Grüße

Antwort

1

ich das tat

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { 
    remoteViews.setTextViewTextSize(R.id.price, TypedValue.COMPLEX_UNIT_PX, 100f); 
} 
+0

diese Lösungen funktioniert, aber vergessen Sie nicht, dass letzte Param ist float '- also müssen wir' f' am Ende verwenden, es wird wie folgt aussehen: 'remoteViews.setTextViewTextSize (R.id.price, TypedValue.COMPLEX_UNIT_PX, 100f);' – Choletski

6

wenn Sie es wünschen, etwas zu verwenden, die auf allen Versionen funktioniert, Verwenden Sie diese:

remoteViews.setFloat(R.id.textView,"setTextSize",fontSize); 
Verwandte Themen