我正在学习在 android 中编程以将我的 java 应用程序传输到我的手机,但我遇到了一个非常基本的问题,我找不到答案。 我正在动态添加按钮并在按下它们时更改颜色。当我在主要活动中这样做时,这很好用,但是当我尝试通过创建单独的类来清理我的代码时,它会中断。 下面提供了代码。 这是我在这里的第一个问题,所以我可能会提前抱歉弄乱了格式。
主要活动
public void test(View view) {
View v = getLayoutInflater().inflate(R.layout.newwindow, null);
ViewGroup insertPoint = (ViewGroup) findViewById(R.id.testlayout8);
insertPoint.addView(v, 0, new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
}
public void multbut(View view) {
view.setBackgroundColor(11111);
}
新的 Java 类扩展了主要活动
public void multbut2(View view) {
view.setBackgroundColor(11111);
}
答案 0 :(得分:0)
您不能将视图传递给除 MainActivity
之外的其他类。
Java 对非原始对象使用“按值传递”,但您应该对添加到容器(屏幕)的视图的同一引用进行更改。
当您传递视图时,java 将在新类中复制它们,这就是您的问题的原因