Я использую эти строки кода (я использую библиотеку picasso) для загрузки изображения и загрузки его на задний план моего RelativeLayout.Android studio Picasso загрузчик не работает после первого запуска приложения
Target target = new Target() {
@Override
public void onBitmapLoaded(Bitmap bitmap, Picasso.LoadedFrom from) {
relative_layout.setBackground(new BitmapDrawable(getResources(), bitmap));
}
@Override
public void onBitmapFailed(Drawable errorDrawable) {
relative_layout.setBackgroundResource(R.drawable.blolo);
}
@Override
public void onPrepareLoad(Drawable placeHolderDrawable) {
relative_layout.setBackgroundResource(R.drawable.blolo);
}
};
Picasso.with(this)
.load("http://i.imgur.com/D3IBDDS.jpg")
.into(target);
Дело в том, что когда я запускаю приложение с помощью своего эмулятора в первый раз, все работает нормально. Проблема в том, что в следующий раз, когда я запустил приложение, он никогда не будет работать, фон никогда не изменится. Я могу заверить вас, что я ничего не меняю в коде. Я просто снова запустил приложение. Однако, если я изменю одну строку кода, например, я делаю некоторые комментарии, например: // blah blah и если я нажимаю run он работает снова, даже если комментарии не имеют функциональности. И, как и раньше, если я снова нажимаю приложение, не изменяя код, фон никогда не изменяется. Есть ли какая-нибудь ошибка или меня преследуют?
EDIT: после некоторых logchat выходов я обнаружил, что я в первый раз запустить приложение, то logchat показывает, что onBitmapLoaded() работает и все работает отлично. В других случаях я запускаю приложение logchat, которое показывает, что onPrepareLoad() запускает и устанавливает фон на мой заполнитель из-за этой проблемы. W/Settings: настройка airplane_mode_on переместилась с android.provider.Settings.System на android.provider.Settings.Global , возвращающее значение только для чтения.
Нет, я сделал их оба. Первый не работает вообще. А второй работает только в первый раз, когда запускается приложение. –