编辑:获取参考来自另一活动对象
这是我使用initialize
变量activity
的布局后的方法在onCreate()
方法被加载
private void initializeVariables() {
randomButton = (Button) findViewById(R.id.randomButton);
gameButton = (Button) findViewById(R.id.gameButton);
i = 1;
listIndex = 0;
nameList = PlayersNames.nameList;
villagerBundle = new ArrayList<>();
characters = new ArrayList<Card>();
players = new ArrayList<Player>();
villagerOne = new Villager();
villagerTwo = new Villager();
villagerThree = new Villager();
villagerFour = new Villager();
villagerFive = new Villager();
villagerBundle.add(villagerOne);
villagerBundle.add(villagerTwo);
villagerBundle.add(villagerThree);
villagerBundle.add(villagerFour);
villagerBundle.add(villagerFive);
}
原来的问题:
我有2个活动在Android。
在一个我创建:
public static Villager villagerOne;
villagerOne = new Villager();
然后在其他我应该访问该villagerOne
的mAlive
变量:
villagerOne.getMAlive();
作为参考,这些是Card
等级:
public class Card {
//Names
public String mCharacter;
//Status
private boolean mAlive;
private boolean mDefended;
private boolean mOwled;
private boolean mLastSavaged;
private boolean mLastLynched;
//Constructor
public Card(){
}
public void setMCharacter(String value){
this.mCharacter = value;
}
public void setMAlive(boolean alive){
this.mAlive = alive;
}
public String getMCharacter(){
return mCharacter;
}
public boolean getMAlive(){
return mAlive;
}
}
这是Villager
类extends Card
:
public class Villager extends Card {
public Villager(){
mCharacter = "Villager";
}
}
访问等活动变量直接是不好的做法,也使整个生命周期变得复杂。所以尝试通过'mAlive'布尔通过意图。 –
如果您打算将一个“Villager”对象从一个Activity传递到另一个,则必须使用“Intent”,并且“Card”对象必须实现“Parcelable”接口。这是一个很好的例子:https://stackoverflow.com/questions/7181526/how-can-i-make-my-custom-objects-be-parcelable – victorantunes
谢谢,我会更新我的代码,当我完成与应用程序,谢谢你的提示! – FET