Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.a1.eng_project;
- import android.content.Context;
- import android.content.res.Resources;
- import android.content.res.TypedArray;
- import android.graphics.Bitmap;
- import android.graphics.Canvas;
- import android.graphics.Color;
- import android.graphics.Paint;
- import android.graphics.RectF;
- import android.icu.util.Measure;
- import android.text.Layout;
- import android.util.AttributeSet;
- import android.util.DisplayMetrics;
- import android.util.Log;
- import android.view.GestureDetector;
- import android.view.MotionEvent;
- import android.view.View;
- import static android.content.ContentValues.TAG;
- public class MovebleView extends View {
- int width, height;
- float circle;
- public MovebleView(Context context,AttributeSet attrs) {
- super(context, attrs);
- circle = convertDpToPixel(30, context);
- }
- @Override
- protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
- super.onMeasure(widthMeasureSpec, heightMeasureSpec);
- width = MeasureSpec.getSize(widthMeasureSpec);
- height = MeasureSpec.getSize(heightMeasureSpec);
- setMeasuredDimension(width,height);
- }
- @Override
- protected void onDraw(Canvas canvas) {
- super.onDraw(canvas);
- Paint p =new Paint();
- p.setColor(Color.WHITE);
- p.setAntiAlias(true);
- p.setStyle(Paint.Style.FILL);
- canvas.drawRoundRect(new RectF(0,0,width,height),circle,circle, p);
- canvas.drawRect(new RectF(0,0,width,height-circle),p);
- p.setColor(Color.LTGRAY);
- canvas.drawRoundRect(new RectF((width/2)-width/10,height-50,((width/2)-width/10)+(width/10)*2,(height-50)+25),width/20,width/20, p);
- }
- float initialX, initialY;
- public boolean onTouchEvent(MotionEvent event) {
- switch (event.getAction()) {
- case MotionEvent.ACTION_DOWN:
- Log.d(TAG, "Action was DOWN");
- break;
- case MotionEvent.ACTION_MOVE:
- float finalY = event.getY();
- height += finalY - initialY;
- case MotionEvent.ACTION_CANCEL:
- break;
- }
- initialX = event.getX();
- initialY = event.getY();
- invalidate();
- return true;
- }
- public float convertDpToPixel(float dp, Context context){
- Resources resources = context.getResources();
- DisplayMetrics metrics = resources.getDisplayMetrics();
- return dp * (metrics.densityDpi/160f);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement