我需要使用方法setText()在TextView中编写文本。 如果我写这个
TextView t = (TextView)this.findViewById(R.id.test);
在我的MainActivity类中它可以工作,如果我尝试在另一个类中编写它,例如这里
public class AssociaCarta extends Activity{
public void associaCarta(int numeroRandom, ImageView carta) {
TextView t = (TextView)this.findViewById(R.id.test);
}
}
我的应用崩溃了。 我不明白为什么。
答案 0 :(得分:3)
解决方案是将当前Activity作为参数传递给您的方法,如下所示:
public class AssociaCarta {
public void associaCarta(Activity context, int numeroRandom, ImageView carta) {
TextView t = (TextView) context.findViewById(R.id.user);
}
}
然后你会在你的MainActivity中使用它:
AssociaCarta carta = new AssociaCarta();
carta.associaCarta(this, randomNumber, cartaImageView);