그냥 코드로 view클레스를 FrameLayout f=new FrameLayout(this);
f.addview(view클래스) 하면 되는 데
xml에서 프레임레이아웃을 만들어서
frame=(FrameLayout)findViewById(R.id.frame);
이렇게 가져와서
addview(view클래스) 를 하게되면 아예 실행도 되지않고 에러가 나게 됩니다.
거기다 궁금한게 또 있는 데요...
public void init(){
Log.e("확인","33");
.......중략
Log.e("확인","44");
}
protected void onDraw(Canvas canvas) {
Log.e("확인","55");
Paint p=new Paint();
p.setColor(Color.BLACK);
Log.e("확인","66");
for(int i=0;i<10;++i){
canvas.drawRect(array.get(i), p);
}
Log.e("확인","77");
super.onDraw(canvas);
거기다 setContentView(view 클레스);
이렇게 직접 view 를 띄워줄때는 로그캣에 Log.e("확인","77");
까지 찍히고 엑티비티로 넘어갔는 데
프레임레이아웃에
frame=(FrameLayout)findViewById(R.id.frame);
addview시켜서 할 때는
log 44까지만 logcat에 나오고 엑티비티로 넘어가는 지...
물론 위에서 말씀드렸든 이렇게 하면 실행도 안되고 에러가 떳지만요...
지금 자바와 SQL데이터베이스, 안드로이드를
짧은 시간에 배우느라..
아직 많이 부족하네요...ㅠㅠ




init가 실행이 되고 onDraw가 실행이 되는 것이 아닙니다.
init와 onDraw가 동시에 실행이 되는 거라고 생각을 하면 될겁니다.
디버그 모드에서 breakpoint설정해서 확인해보시면 금방 해결하실 수 있을겁니다.