Android Picasso 没有加载要从处理程序查看的 img
Android Picasso not loading img to view from handler
我试图在 Thread 中获取图片 url 并在 Picasso 中加载,但图片不显示。 Url 有效。 Picasso 不加载占位符和错误 img。没有线程和处理程序工作正常。
final String[] sss = {""};
final Handler hh = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
Picasso.with(context).load(sss[0]).resize(500, 281).centerCrop().into(mainHolder.ivPreview);
}
};
Thread th = new Thread(new Runnable() {
@Override
public void run() {
sss[0] = getUrl();
hh.sendEmptyMessage(0);
}
});
th.start();
您再次检查 getUrl() 和上下文。此代码对我有用。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ImageView imageView= (ImageView) findViewById(R.id.imageView);
final Context context=this;
final String[] sss = {""};
final Handler hh = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
Picasso.with(context).load(sss[0]).resize(500, 281).centerCrop().into(imageView);
}
};
Thread th = new Thread(new Runnable() {
@Override
public void run() {
sss[0] = "http://teleflora.edgesuite.net/images/products/HW0_706075.jpg";
hh.sendEmptyMessage(0);
}
});
th.start();
}
}
我试图在 Thread 中获取图片 url 并在 Picasso 中加载,但图片不显示。 Url 有效。 Picasso 不加载占位符和错误 img。没有线程和处理程序工作正常。
final String[] sss = {""};
final Handler hh = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
Picasso.with(context).load(sss[0]).resize(500, 281).centerCrop().into(mainHolder.ivPreview);
}
};
Thread th = new Thread(new Runnable() {
@Override
public void run() {
sss[0] = getUrl();
hh.sendEmptyMessage(0);
}
});
th.start();
您再次检查 getUrl() 和上下文。此代码对我有用。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final ImageView imageView= (ImageView) findViewById(R.id.imageView);
final Context context=this;
final String[] sss = {""};
final Handler hh = new Handler(){
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
Picasso.with(context).load(sss[0]).resize(500, 281).centerCrop().into(imageView);
}
};
Thread th = new Thread(new Runnable() {
@Override
public void run() {
sss[0] = "http://teleflora.edgesuite.net/images/products/HW0_706075.jpg";
hh.sendEmptyMessage(0);
}
});
th.start();
}
}