您的位置:首页 > 移动开发 > Android开发

Android 多态知识使用实例(一)

2015-12-04 13:05 302 查看
依次显示自定义图形。
一:定义一个类继承View基类,重写View基类的方法,定义自己要画出的图形。
1:自定义圆形
[align=left][/align]
public class Round extends View{
Paint p = new Paint();
public Round(Context context){
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
p.setColor(Color. RED);
canvas.drawCircle(300,100,100, p);
}
}


[align=left][/align]
[align=left]2:自定义一个正方形[/align]

[align=left][/align]

public class Square extends View{
Paint p=new Paint();
Rect r=new Rect(200, 300, 400, 500);
public Square (Context context){
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
p.setColor(Color. BLUE);
canvas.drawRect( r, p);

}
}


[align=left]二:在MainActivity主函数中,用多态知识实现依次画出不同的图形。[/align]
[align=left][/align]
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
RelativeLayout root = new RelativeLayout(this);
setContentView(root);
// 实例化要画出的图形
Round round = new Round(this );
Square square = new Square(this );
// 将要画出图形的实例放到数组中
View[] v = new View[] { round, square };
// 遍历数组,将图形对象放到布局文件中
for (int i = 0; i < v.length; i++) {
root.addView(v[i]);
}
}


[align=left][/align]

[align=left]在主函数中,将要画出图形的实例放到View类型的数组中,遍历数组显示图形。[/align]
[align=left]下面是效果图:[/align]

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: