我是Android开发的新手,所以我可能在做一些愚蠢的事情。有什么想法为什么该代码不起作用?

它可以编译并运行,但实际上并没有成功设置图像(以前已将其设置为灰色背景)。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_my_activity);
    Button getImageButton = (Button) (findViewById(R.id.btnGetImage));
    getImageButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            ImageView myImageView = (ImageView) (findViewById(R.id.myImageView));
            Picasso.with(v.getContext()).load("https://www.example.com/someimage").into(myImageView);
        }
    });
}

最佳答案

这样改变你的代码


Picasso.with(YOUR_ACTIVITY_NAME.this).load("https://www.example.com/someimage").into(myImageView);


这里的v.getContext()与主要上下文无关,因此它对您没有帮助,我们需要传递当前活动的上下文

10-07 20:45