Android 如何将整数从活动传递到其视图
我尝试通过此活动传递int,但未成功:Android 如何将整数从活动传递到其视图,android,Android,我尝试通过此活动传递int,但未成功: public class SecondActivity extends Activity { private int sign=3; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TestView newView = new TestView(this, sign); reque
public class SecondActivity extends Activity {
private int sign=3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TestView newView = new TestView(this, sign);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(newView);
}
}
对于这一观点:
public class TestView extends View {
private int sign;
public TestView(Context context, int signValue) {
super(context);
this.sign=signValue;
}
}
public class TestView extends View {
private int sign=0;
public TestView(Context context) {
super(context);
}
public void setSign(int signValue) {
sign=signValue;
}
}
但是值没有传递,变量“sign”仍然为null。我错过什么了吗?什么
(在我的代码中,变量符号从bundle中获取其值,但我测试了它,知道它得到了正确的值。)
编辑:
仍然不知道前面的代码出了什么问题,但我通过创建一个setSign方法解决了这个问题
public class SecondActivity extends Activity {
private int sign=3;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
TestView newView = new TestView(this, sign);
requestWindowFeature(Window.FEATURE_NO_TITLE);
newView.setSign(sign);
setContentView(newView);
}
}
对于这一观点:
public class TestView extends View {
private int sign;
public TestView(Context context, int signValue) {
super(context);
this.sign=signValue;
}
}
public class TestView extends View {
private int sign=0;
public TestView(Context context) {
super(context);
}
public void setSign(int signValue) {
sign=signValue;
}
}
符号不能为空。int是一个基本类型而不是一个对象。那么初始化变量应该解决这个问题吗?谢谢,我会尽快尝试的!类成员是在编译时初始化的,如果我记得是正确的,那么在最坏的情况下,如果您不提供显式初始化,符号是零(int的默认值)。您可以发布您的包代码吗??