Android 自定义View需要重写ondraw()等方法
2014-11-05 02:33
393 查看
Android 自定义View需要重写ondraw()等方法,这篇博客给大家说说自定义View的写法,需要我们继承View,然后重写一些
方法,方法多多,看你需要什么方法
首先写一个自定义的View 继承View
布局文件:
主活动:
效果:
自定义View看你需求而定,并不只是画图形而已,我这里只是说明下自定义View需要重写的方法~~
方法,方法多多,看你需要什么方法
首先写一个自定义的View 继承View
package com.example.engineerjspview; import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.util.AttributeSet; import android.view.MotionEvent; /** * 自定义 EngineerJspView * @author Engineer-Jsp * @date 2014.10.28 * */ import android.view.View; public class EngineerJspView extends View{ public float E_X = 188; public float E_Y = 188; Paint paint = new Paint(); public EngineerJspView(Context context) { super(context); } public EngineerJspView(Context context, AttributeSet set){ super(context, set); } @Override protected void onDraw(Canvas canvas) { super.onDraw(canvas); paint.setColor(Color.RED); canvas.drawCircle(E_X, E_Y, 88, paint); } @Override public boolean onTouchEvent(MotionEvent event) { E_X = event.getX(); E_X = event.getY(); invalidate(); return false; } @Override protected void onAnimationStart() { super.onAnimationStart(); } @Override protected void onAnimationEnd() { super.onAnimationEnd(); } }
布局文件:
<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=".MainActivity" > <com.example.engineerjspview.EngineerJspView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentBottom="true" android:layout_centerHorizontal="true" /> </RelativeLayout>
主活动:
package com.example.engineerjspview; /** * 自定义 EngineerJspView * @author Engineer-Jsp * @date 2014.10.28 * */ import android.os.Bundle; import android.app.Activity; import android.view.Menu; import android.view.View; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
效果:
自定义View看你需求而定,并不只是画图形而已,我这里只是说明下自定义View需要重写的方法~~
相关文章推荐
- Android 自定义 view(三)—— onDraw 方法理解
- 自定义ViewGroup需要重写的方法
- 自定义view之继承View重写onDraw方法
- android 自定义view时,重写onDraw(),对Canvas的理解
- 自定义View中为什么需要重写onMeasure()方法?
- Android 自定义 view(三)—— onDraw 方法理解
- Android 自己定义View须要重写ondraw()等方法
- Android 自定义 view(三)—— onDraw 方法理解
- Android 自定义ViewGroup中onDraw方法不执行的解决方法
- android 自定义view要重写哪几个方法
- 自定义View相关可以重写的方法及作用 需要注意的事项
- Android 自定义View之继承view重写onDraw
- android UI——自定义view(layout)重写方法的分析
- Android开发教程:自定义ViewGroup方法总结
- 在Android中,可以自定义类,继承ViewGroup等容器类,以实现自己需要的布局显示。
- Android中自定义View的研究(三) -- 获得Bitmap的三种方法
- [Android] 获取WebView的页面标题(Title)-----WebChromeClient.onReceivedTitle()方法的重写
- Android中View的绘制过程 onMeasure方法简述 附有自定义View例子
- Android-自定义View之重写控件(自定义Dialog)
- android中自定义view常用方法