나는 Paint
과 Canvas
을 사용하고 싶습니다. publishProgress
을 사용할 때 기본적으로 무언가를 페인트합니다.백그라운드에서 Android Studio의 그림판
내 코드에 무엇이 잘못되었으며 무엇이 그림에 그려져 있지 않은지 알려주는 것이 좋을 것입니다.
참고. 이 모두가 AsyncTaskActivity
클래스
@Override
protected void doInBackground(Void... params) {
publishProgress(); // Run onProgressUpdate() method
}
}
@Override
protected void onProgressUpdate(Void... params) {
// Here you can access the UI thread
Canvas canvas = new Canvas();
Paint pa1= new Paint();
pa1.setColor(Color.RED);
pa1.setStyle(Paint.Style.FILL);
pa1.setStrokeWidth(50);
canvas.drawLine(0, 0, 100, 100, pa1);
}
캔버스가 화면의 어떤 것과도 연결되어 있지 않습니다. 'onProgressUpdate'가 진행 상황을 표시하는 데 사용할 수있는 사용자 정의보기를 만들고 싶을 것입니다. –
자, 이제'extends view'로 새로운 클래스를 만들고'onProgressUpdate()'에서'ondraw()'를 호출하려고합니다. 그거야? – difegui
뷰가 뷰 계층 구조의 일부 여야하거나 여전히 화면에 나타나지 않습니다. 따라서 새로운 뷰를 만들고 싶지 않습니다. 활동의 레이아웃에서보기를 정의한 다음보기를 찾아야합니다. 뷰의'onDraw' 메쏘드에 실제 드로잉을 넣어 [@Vova suggests] (http://stackoverflow.com/a/41469887/535871). –