Create Draw Rectangle shape Above Canvas in android

How to programmatically design rectangle shape above canvas layer on activity screen in android.

In this tutorial we are designing rectangle shape just above the surface layer of canvas using Rect rectangle object. So here is the complete step by step tutorial for Create Draw Rectangle shape Above Canvas in android.

android-project-download-code-button

How to Create Draw Rectangle shape Above Canvas in android.

Code for MainActivity.java file.

 package com.drawrectangleshapeoncanvas_android_examples.com;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

public class MainActivity extends Activity {

 ImageView imageview;
 Button button;
 Bitmap bitmap;
 Canvas canvas;
 Paint paint;
 int ShapePadding = 55;
 Rect rectangleShape;
 @Override
 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 
 
 imageview = (ImageView)findViewById(R.id.imageView1);
 button = (Button)findViewById(R.id.button1);
 
 
 button.setOnClickListener(new View.OnClickListener() {
 @Override
 public void onClick(View view) {
 
 CreateBitmap();

 CreateCanvas();
 
 CreatePaint();
 
 CreateRectangleShape();
 
 canvas.drawRect(rectangleShape,paint);
 
 imageview.setImageBitmap(bitmap);
 }
 });
 
 }

 public void CreateBitmap(){
 
 bitmap = Bitmap.createBitmap(
 400,
 250,
 Bitmap.Config.RGB_565
 );
 
 }
 
 public void CreateCanvas(){
 
 canvas = new Canvas(bitmap);

 canvas.drawColor(Color.CYAN);
 
 }
 
 public void CreatePaint(){
 
 paint = new Paint();
 
 paint.setStyle(Paint.Style.FILL);
 
 paint.setColor(Color.BLUE);
 
 paint.setAntiAlias(true);
 
 }
 
 public void CreateRectangleShape()
 {
 rectangleShape = new Rect(
 ShapePadding,
 ShapePadding,
 canvas.getWidth() - ShapePadding,
 canvas.getHeight() - ShapePadding
 );

 
 } 
}

Code for activity_main.xml layout file.

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
 xmlns:tools="http://schemas.android.com/tools"
 android:layout_width="match_parent"
 android:layout_height="match_parent"
 android:paddingBottom="@dimen/activity_vertical_margin"
 android:paddingLeft="@dimen/activity_horizontal_margin"
 android:paddingRight="@dimen/activity_horizontal_margin"
 android:paddingTop="@dimen/activity_vertical_margin"
 tools:context="com.drawrectangleshapeoncanvas_android_examples.com.MainActivity" >

 <ImageView
 android:id="@+id/imageView1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_alignParentTop="true"
 android:layout_centerHorizontal="true"
 />

 <Button
 android:id="@+id/button1"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:layout_centerHorizontal="true"
 android:layout_centerVertical="true"
 android:text="Click here to Draw Rectangle shape on Canvas in android" />

</RelativeLayout>

Screenshot:

Create Draw Rectangle shape Above Canvas in android

Click here to download Create Draw Rectangle shape on Canvas in android project with source code.

Leave a Reply

Your email address will not be published. Required fields are marked *