こんにちは!onDraw()呼び出しで画像を塗りつぶしたい水平スクロールビュー内にsurfaceViewがあります。しかし、何も描かれていません。描画がスレッドCanvasThreadから行われるクラスがあります。
public class PanelChart extends SurfaceView implements SurfaceHolder.Callback {
private CanvasThread canvasthread ;
public PanelChart(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
getHolder().addCallback(this);
canvasthread = new CanvasThread(getHolder(), this);
setFocusable(true);
私は変更しようとしました
`synchronized (_surfaceHolder) {
_panel.postInvalidate();
}`
に
synchronized (_surfaceHolder) {
_panel.postInvalidate();
}
また、運がなくてもsetWillNotDraw(false)という呼び出しを追加しようとしました。
@Override
public void surfaceCreated(SurfaceHolder holder) {
// TODO Auto-generated method stub
canvasthread.setRunning(true);
canvasthread.start();
setWillNotDraw(false);
これは一般的な問題のようですが、私が遭遇した解決策はどれも私には効果がありませんでした。
ありがとう!