InflationX / Calligraphy

Custom fonts in Android the easy way...
Apache License 2.0
1.09k stars 82 forks source link

Android 9 does not render text #41

Open jerome2710 opened 5 years ago

jerome2710 commented 5 years ago

While devices running Android 8 show text in my app properly, all my views are 'empty' when using a device with Android 9.

The Layout Inspector of Android Studio does show the contents under "Text" -> "mText", but not visually in the view. No errors were triggered.

build.gradle:

implementation 'io.github.inflationx:calligraphy3:3.1.1'
implementation 'io.github.inflationx:viewpump:2.0.3'

AndroidManifest.xml application:

android:name=".App"

App.java:

public class App extends Application {
    ...

    @Override
    public void onCreate() {
        ...

        ViewPump.init(ViewPump.builder()
            .addInterceptor(new CalligraphyInterceptor(
                new CalligraphyConfig.Builder()
                    .setDefaultFontPath("fonts/Rubik-Regular.ttf")
                    .setFontAttrId(R.attr.fontPath)
                    .build()))
            .build());

        ...
    }
}

Activity.java:

@Override
protected void attachBaseContext(Context newBase) {
    super.attachBaseContext(
        ViewPumpContextWrapper.wrap(
                LokaliseContextWrapper.wrap(newBase)
        )
    );
}

And then, all my views containing texts are empty on Android 9.

PembaTamang commented 5 years ago

yes same problem with me too... exactly the same

jimmy510s commented 4 years ago

Me too. Do we know the solution to this?

chrisjenx commented 3 years ago

Are you using a mobile friendly font? Try changing to a different ttf and see if that works. (Each Version of android changes the skia lib, so it's possible 8->9 made something in those ttf incompatible :( )