2017-02-17 27 views
0

我是编程的初学者...所以也许这个问题听起来很有趣。 我在MainActivity内部创建一个新的CanvasView时遇到了问题,因为它在其括号内写了一些东西。 这里是我的MainActivity:创建新的CanvasView

public class MainActivity extends AppCompatActivity { 
    CanvasView myView; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     //the line below doesnt work 
     myView = new CanvasView(); 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 
    public void button1(View v){ 
     CanvasView.l = 400; 
     myView.invalidate(); 
    } 
} 

这里是我CanvasView:

public class CanvasView extends View{ 
    Paint paint = new Paint(); 
    static int l = 500; 

    public CanvasView (Context context, AttributeSet attrs) { 
     super(context); 
     paint = new Paint(); 
     paint.setAntiAlias(true); 
     paint.setColor(Color.GREEN); 
     paint.setStyle(Paint.Style.STROKE); 
     paint.setStrokeJoin(Paint.Join.ROUND); 
     paint.setStrokeWidth(10); 
    } 
    @Override 
    public void onDraw(final Canvas canvas) { 
     canvas.drawLine(100,100,l,100,paint); 
    } 
} 

回答

0

super.onCreate后创建YOUT帆布的setContentView像下面

super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); myView = new CanvasView();

+0

我真的不明白是什么你的意思是你的第一行:“super.onCreate方法。” – nok4