캔버스 뷰를 가로 스크롤 뷰 내부의 상대 레이아웃에 추가하려고합니다.안드로이드 - 캔버스 onDraw가 실행되지 않습니다
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="#fff"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/hsv"
android:layout_width="fill_parent"
android:background="#EEDB00"
android:layout_height="30mm">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/canvas"
android:background="#000"
android:layout_width="300mm"
android:layout_height="20mm">
</RelativeLayout>
</HorizontalScrollView>
</RelativeLayout>
View를 확장하는 CanvasView라는 클래스를 만들고 onDraw()를 오버라이드하여 몇 가지 기본 도형을 그렸습니다. 그러나 캔버스 내가 할 때 RelativeLayout의에 표시되지 않습니다
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
cView = new CanvasView(this);
rLayout = (RelativeLayout)this.findViewById(R.id.canvas);
rLayout.addView(cView);
}
는 그러나, 내가 직접 작동 setContentView(cView);
를 호출하여 추가합니다. 파기에 나는 addView()
을 호출 할 때 onDraw()
이 전혀 작동하지 않으므로 캔버스가 그려지지 않는다는 것을 알았습니다.이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
이 일을 그! 고마워요! – jeffreyveon
이것은 내가 가지고 있던 동일한 문제입니다. 보기에 배경을 추가하는 것도 효과가 있습니다. – raydowe