我正在尝试从firebase获取图像。因此,当在firebase中没有图像时,我希望我的应用程序徽标将设置在那里。但我的应用程序崩溃了,并将错误抛入了log-cat。
我尝试使用if-else条件。以及成功和错误方法。但效果并不好。
private static final String Earnings_Freebies = "EARNINGS_FREEBIES";
private Earnings_Freebies list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.earnings_freebies);
list = (Earnings_Freebies) getIntent().getExtras().getSerializable(Earnings_Freebies);
if (TextUtils.isEmpty(list.getmImageView())){
m_EF_ImageView.setImageResource(R.drawable.app_logo);
mProgressBarEF.setVisibility(View.GONE);
}
Picasso.with(getApplicationContext())
.load(list.getmImageView())
.into(m_EF_ImageView, new Callback() {
@Override
public void onSuccess() {
mProgressBarEF.setVisibility(View.GONE);
mFailedImage.setVisibility(View.GONE);
}
@Override
public void onError() {
mProgressBarEF.setVisibility(View.GONE);
mFailedImage.setVisibility(View.VISIBLE);
}
});或者我忘记将图像放入firebase,然后应用程序徽标将自动设置为Image-view。
发布于 2019-03-31 22:16:46
1)毕加索支持下载和错误占位符作为可选功能。
2)在加载镜像失败的情况下,会使用error drawable。在这种情况下,临时占位符图像将被放置在.error()方法中的错误可绘制替换,在出现错误的情况下,您可以在其中显示应用程序的图标图像。
Picasso.with(this).load("https://someImageURL")
.error(R.mipmap.ic_launcher) // Your app's icon image displayed on error
.placeholder(R.drawable.user_placeholder) // some placeholder image
.into(imageView, new Callback() {
@Override
public void onSuccess() {
Log.d("TAG", "onSuccess");
}
@Override
public void onError() {
Toast.makeText(getApplicationContext(), "An error occurred", Toast.LENGTH_SHORT).show();
}
});https://stackoverflow.com/questions/55441242
复制相似问题