1,命令行创建工程(t表示android target版本,可以用android list查看可用的版本)
android create project -n HelloWorld -t 6 -p HelloWorld -k com.my.helloworld -a HelloWorld
2,匿名内部类用法
Button bn = (Button)findViewById(R.id.bn1);
bn.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
Toast.makeText(act, "click", Toast.LENGTH_LONG).show();
}});
3,Android提供两种事件处理机制
1)基于监听器的机制,组件通过如 Button.setOnClickListener来监听组件的事件,此种事件源、事件监听由两个类分开实现,因此具有更好的维护性。另外,基于监听的事件会被优先触发。
2)事件回调机制
此机制能提高程序的内聚性,事件在此类内部就被处理,不需要与Activity聚合了,不需要再Activity中使用代码来为此组件绑定事件监听器,如下 onTouchEvent 在类内部就被处理了,程序中只用在layout中放置此组件即可,Activity中不需要增加任何处理代码
public class DrawView extends View {
public float currentX = 40;
public float currentY = 50;
public DrawView(Context context, AttributeSet set) {
super(context, set);
}
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint p = new Paint();
p.setColor(Color.RED);
canvas.drawCircle(currentX, currentY, 15, p);
}
public boolean onTouchEvent(MotionEvent event) {
this.currentX = event.getX();
this.currentY = event.getY();
tihs.invalidate();
return true;
}
}