继承一个View并覆盖onDraw(Canvas)
问题描述:
当我在Activity中实例化myView时,为什么需要传递上下文以及为什么需要将上下文传递给View的构造函数?什么意义?继承一个View并覆盖onDraw(Canvas)
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.graphics.Canvas;
public class POCII extends Activity {
myView mv = new myView(this);
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(mv);
}
}
class myView extends View {
public myView(Context context) {
super(context);
}
@Override
public void onDraw(Canvas canvas) {
Paint paint = new Paint();
canvas.drawRect(0,0,100,100, paint);
}
}
答
观超要求它是为了访问某些资源,如当前主题运行的背景下,等
答
的观点需要了解当前应用程序上下文能访问它。在这里你得到了一些关于上下文有关的信息:http://developer.android.com/reference/android/content/Context.html