package ngodingandroid.intrografik;
import android.app.Activity;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Path;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends Activity {
DemoView demoview;
//@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
demoview = new DemoView(this);
setContentView(demoview);
}
private class DemoView extends View{
public DemoView(Context context){
super(context);
}
@Override protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
//deklarasi object paint
Paint paint = new Paint();
//set warna latar belakang dg format ARGB
paint.setStyle(Paint.Style.FILL);
paint.setColor(0xff0000ff);
canvas.drawPaint(paint);
//menulis string pada mode grafis
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.YELLOW);
paint.setTextSize(30);
canvas.drawText("Tulisan di mode grafis Android", 25, 75, paint);
//membuat kotak
paint.setAntiAlias(true);
paint.setColor(Color.RED);
canvas.drawRect(50, 100, 420, 130, paint);
//menggambar lingkaran
int x;
x=1;
while (x<=11) {
paint.setColor(Color.GREEN);
canvas.drawCircle(50 + (x * 30), 150, 15, paint);
x=x+1;
}
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(2);
paint.setColor(Color.YELLOW);
Path path = new Path();
path.moveTo(0, 0);
path.lineTo(5, 50);
path.lineTo(-50, 0);
path.close();
path.offset(200, 200);
canvas.drawPath(path, paint);
path.offset(50, 0);
canvas.drawPath(path, paint);
path.offset(50, 0);
canvas.drawPath(path, paint);
}
}
}
Berikut adalah screenshotnya:
Yang perlu kita perhatikan program diatas tidak menggunakan default interface yang biasanya kita gunakan dalam setiap aplikasi Android, jadi ContentView nya tidak menggunakan file XML seperti biasa melainkan dirujuk kepada class DemoView, yang memanfaatkan object Canvas untuk membangkitkan komponen-komponen grafisnya.
Demikian sedikit contoh sederhana dari implementasi grafis di Android. Mudah-mudahan bisa memberikan informasi buat rekan-rekan developer semua.
Oleh: Wahyu Kurniawan


0 comments:
Post a Comment