@sulik93
Начал изучать Java. Продолжаю изучать Java.

Как правильно получить шрифт используя Observable?

Как правильно создать Observable так, чтобы он в фоне загрузил шрифт из assets?
Я не очень знаком с JavaRx.

Пробую так:
Observable.fromFuture(new Future<Typeface>() {
            @Override
            public boolean cancel(boolean mayInterruptIfRunning) {
                return false;
            }

            @Override
            public boolean isCancelled() {
                return false;
            }

            @Override
            public boolean isDone() {
                return false;
            }

            @Override
            public Typeface get() throws InterruptedException, ExecutionException {
                /*RGSOMSApplication.getComponent().context().getAssets();*/
                return Typeface.createFromAsset(context.getAssets(), "some/typeface/from/assets");
            }

            @Override
            public Typeface get(long timeout, @NonNull TimeUnit unit) throws InterruptedException, ExecutionException, TimeoutException {
                return Typeface.createFromAsset(context.getAssets(), some/typeface/from/assets);
            }
        })
                .subscribeOn(Schedulers.io())
                .observeOn(AndroidSchedulers.mainThread());


Правильно ли это?

можно конечно сделать:
Observabe
.just("")


и дальше в фоне получить шрифт.

Подскажите как правильно?
  • Вопрос задан
  • 207 просмотров
Пригласить эксперта
Ответы на вопрос 1
@AngeuT
Например так:
Single.fromCallable(new Callable<Typeface>() {
    @Override
    public Typeface call() throws Exception {
        return Typeface.createFromAsset(context.getAssets(), "some/typeface/from/assets");
    }
});
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы