Растровая переменная на котлине - PullRequest
0 голосов
/ 03 мая 2019

Как я могу инициализировать растровое изображение в kotlin?

В настоящее время я делаю следующее:

var drawablex = Bitmap()

getBitmapSingle(Picasso.get(), imagelink)
    .subscribeOn(Schedulers.io())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe({ bitmap ->
         drawablex = BitmapDrawable( bitmap)
    }, Throwable::printStackTrace)

... но я думаю, что это неправильно.

Ответы [ 2 ]

0 голосов
/ 03 мая 2019

Используйте BehaviorSubject, вот так:

var drawablexSubject = BehaviorSubject.create<BitmapDrawable>()

getBitmapSingle(Picasso.get(), imagelink)
    .subscribeOn(Schedulers.io())
    .observeOn(AndroidSchedulers.mainThread())
    .subscribe({ bitmap ->
         drawablexSubject.onNext(BitmapDrawable( bitmap))
    }, Throwable::printStackTrace)
0 голосов
/ 03 мая 2019

попробуйте это

val bitmap = assetsToBitmap("ic_launcher_background")


    private fun assetsToBitmap(fileName:String): Bitmap?{
        return try{
            val stream = assets.open(fileName)
            BitmapFactory.decodeStream(stream)
        }catch (e: IOException){
            e.printStackTrace()
            null
        }
    }


    // Method to convert a bitmap to bitmap drawable
    private fun bitmapToDrawable(bitmap:Bitmap): BitmapDrawable {
        return BitmapDrawable(resources,bitmap)
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...