要以编程方式替换布局中的图像,就我而言,我需要引用另一类的另一布局中的图像。有:第一类,由第二类扩展,每个类都有自己的布局。我需要从第一类参考第二类模型中的图像。
如何根据下面的图片替换代码执行此操作?
ImageView img= (ImageView) findViewById(R.id.image);
img.setImageResource(R.drawable.my_image);
答案 0 :(得分:0)
在根据其中设置的图像开始使用putextra之前,将一些值传递给第二活动。
如果从第二到第一使用startactivityforresult和setresult
答案 1 :(得分:0)
您可以在所需的任何地方使用图像
public class Activity2 extends Activity1 {
ImageView changeImage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
int image1 = R.id.imageView1;
int image2 = R.id.imageView2;
changeImage = (ImageView)findViewById(R.id.imageView1);
changeImage.setImageResource(**you can add your image1/image2 **);
}
}
这样可以解决您的问题
答案 2 :(得分:0)
注意:建议不要使用父级到子级调用,因为这会破坏继承的原因。最好的方法是重组应用程序设计,以便不存在父子依赖关系。父母永远不需要了解自己的孩子或他们的能力。
但是..您可以通过FirstClass中的以下方法来实现:
void udpate(SecondClass s) {
if(s instanceof SecondClass) ((SecondClass)s).updateImageView(String url);
}
其中updateImageView将是SecondClass内部用于更新所需imageView的方法。
希望有帮助。