将ImageView传递给构造函数

时间:2012-07-04 07:08:57

标签: android

从我的主要活动中,我想将ImageView传递给另一个类的构造函数,或者如果你愿意,可以传递给这个类的对象。下面有一些代码。

班级案例:

public class Case {

String id; 
int status; 
Date date;
ImageView orginalFace;
ImageView profilePicture; 


public Case(String id, int status, Date date, ImageView orginalFace, ImageView profilePicture) {

    this.id= id;
    this.status = status;
    this.date = date;
    this.orginalFace= orginalFace;
    this.profilePicture= profilePicture; 

  }
}

这是我尝试添加ImageView的地方:

ArrayList<Case> cases = new ArrayList<Case>(); 

    Case case1 = new Case("991176565809", 1, new Date(), R.drawable.face, R.drawable.profile); 

我知道当我尝试添加R.drawable.faceR.drawable.profile时,这只是integers。我怎样才能正确地做到这一点?

2 个答案:

答案 0 :(得分:2)

您可以像这样加载两个ImageView:

ImageView faceImg = new ImageView(context);
faceImg.setImageResource(R.drawable.face);

ImageView profileImg = new ImageView(context);
profileImg.setImageResource(R.drawable.profile);

答案 1 :(得分:1)

要传递ImageView,您可以使用findViewById(int id)方法。在你的情况下:

ArrayList<Case> cases = new ArrayList<Case>(); 

ImageView imageView1 = new ImageView(yourActivitysContext);
imageView1.setImageResource(R.drawable.face);

ImageView imageView2 = new ImageView(yourActivitysContext);
imageView2.setImageResource(R.drawable.profile);

Case case1 = new Case("991176565809", 1, new Date(), imageView1 , imageView2 ); 

但是我必须警告你,将imageViews存储在内存中并不是一个好习惯。