我实际的问题:我有CustomView1
类的数组。我想在CustomView2
课程中访问它。当它填满时,我必须拨打view2.invalidate()
。访问对象,在Activty类创建
这是我的活动类:
public class TestApp extends Activity {
CustomView1 view1;
CustomView2 view2;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
view1 = (CustomView1) findViewbyId(R.id.CustomViewID1);
view2 = (CustomView2) findViewbyID(R.id.CustomViewID2);
}
}
这是我第CustomView
类。在这里我想打电话给view2.invalidate()
。
public class CustomView1 extends View {
byte[] bytearray = new byte[200];
public CustomView1(Context context, AttributeSet attrs) {
super(context, attrs);
}
@override
onDraw() {
view2.invalidate();
}
}
这是我的第二个CustomView
类。在这里,我想访问我在Activity类中创建的CustomView1
(即view1
对象)类的相同对象。
public class CustomView2 extends View {
public CustomView2(Context context, AttributeSet attrs) {
super(context, attrs);
}
}
是否可以像这样访问?任何其他想法如何做到这一点?
我可以创建CustomView1类这样的对象。 \t CustomView2 = new CustomView2(context,null); – Tejas
我是面向对象编程的新手。我们也可以使用这种方法进行普通课程吗? – Tejas
@ user2737044对于你的第一个问题,我已经更新了我的答案。是的,你可以使用这个aproach正常的类(不是活动,服务等)。 – Angelo