View是所有UI的超类,如果系统自带的布局控件不能满足我们的需求,那么我们可以继承View类来写自己的UI
继承View类后还需要重写OnDraw方法,下面通过一个实例来了解:
步骤:
- 新建一个Activity
- 继承View类
- 实现onDraw方法
- 在onDraw方法中设置画笔和画布控件、
- 在xml文件中加入创建的视图
图像:
XML文件:
<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"> <com.example.itab.tab android:layout_width="fill_parent" android:layout_height="49dp" android:layout_alignParentBottom="true" /> </RelativeLayout>
Java文件:
package com.example.itab; public class tab extends View { private Paint mp; //声明一个画笔控件 public tab(Context context, AttributeSet attrs) { super(context, attrs); } @Override protected void onDraw(Canvas canvas) { mp = new Paint(); // 新建画笔 mp.setStyle(Paint.Style.FILL); // 设置画笔为实心 Rect r = new Rect(); // 新建一个矩形框 this.getDrawingRect(r); // 填充矩形的各个位置属性 canvas.drawColor(0XFF000000); // 设置画布颜色 mp.setColor(0X00FF00); // 设置画笔颜色 /* 绘制一条直线,参数依次为:开始的横坐标,开始的纵坐标,结束的横坐标,结束的纵坐标,坐标由矩形来决定,用mp画笔来绘制 */ canvas.drawLine(r.left, r.centerY(), r.right, r.centerY(), mp); super.onDraw(canvas); } }
相关推荐
Android实例源码-自定义控件类安卓源代码(20例) androd自定义有进度的圆形进度条.zip Android 4.0风格中文滚动输入.zip Android Form EditText 验证输入合法性的编辑框.zip Android 自定义头部控件,简单易用.rar ...
可以看到QQ上的ToolBar其实就是一个自定义的view,可以看到不同的界面就是简单地修改了文字而已,在第二张与第三张尤其的明显,我们就仿QQ的这个Toolbar设置一个自定义控件 在开始之前,首先了解一下官方是如何实现...
本文实例讲述了Android自定义控件eBook实现翻书效果的方法。分享给大家供大家参考,具体如下: 效果图: Book.java文件: package com.book; import android.app.Activity; import android.os.Bundle; import ...
Android自定义view组合控件、重写控件的例子源码,创建出对应的组合布局视图,将创建出的视图添加到根节点。Android使用view控件的例子,面向Android开发新手,高手绕行。
主要介绍了Android中的View类以及自定义View控件的方法,讲解了如何继承View类并且展示了一个对View进行重绘的例子,需要的朋友可以参考下
开发自定义控件的步骤: 1、了解View的工作原理 2、 编写继承自View的子类 3、 为自定义View类增加属性 4、 绘制控件 5、 响应用户消息 6 、自定义回调函数 一、View结构原理 Android系统的视图结构的设计也...
目录介绍 01.阴影效果有哪些实现方式 02.... 03.... 04.... 第四种:自定义View 否定上面前两种方案原因分析? 第一个方案的CardView渐变色和阴影效果很难控制,只能支持线性或者环装形式渐变,这种不
3、继承View,这类自定义控件没有跟原生的控件有太多的相似的地方,也不需要在自己的肚子里添加其他的子控件。 ToggleView自定义开关控件表征上没有跟Android原生的控件有什么相似的地方,而且在滑动的效果上也没有...
代码为博客实例代码:有问题博客留言:http://blog.csdn.net/u013637305/article/details/50774062
动画(animation,animator)###自定义控件(Ondraw,OnMesure,Onlayout)-以及实战(最后策划)[Ps莫在意向代码习惯是否好坏,因为时间有限,主要是分享...自定义控件,学习记录演示这里涵盖了笔记,实例跟着启舰学习
本文实例为大家分享了Android自定义view实现输入控件的具体代码,供大家参考,具体内容如下 网络上大部分的输入控件都是多个EditText组合而成,本例中采用的是: 单个EditText作为输入的捕捉控件 多个ImageView的...
7.5 Android应用的灵魂——Intent和Activity介绍与实例 7.5.1 实例操作演示 7.5.2 实例编程实现 7.6 用好列表,做好程序——列表(ListView)介绍与实例 7.6.1 实例程序演示 7.6.2 实例编程实现 7.7 友好地互动交流...
本文实例讲述了Android开发自定义控件之折线图实现方法。分享给大家供大家参考,具体如下: 前言 折线图是Android开发中经常会碰到的效果,但由于涉及自定义View的知识,对许多刚入门的小白来说会觉得很高深。其实...
iphone上有开关控件,很漂亮,...继承自view类,override其onDraw函数,把两个背景图(一个灰的一个红的)和一个开关图(圆开关)通过canvas画出来;同时override其onTouchEvent函数,实现滑动效果;最后开启一个线程
本文实例讲述了Android编程基于自定义控件实现时钟功能的方法。分享给大家供大家参考,具体如下: 在学习安卓群英传自定义控件章节的时候,有一个例子是绘制时钟,在实现了书上的例子后就想看这个时钟能不能动起来。...
02_CheckBoxDemo 演示复选框和单选按钮控件的使用方法。 03_ComboBoxDemo 演示组合框和列表框控件的使用方法。 04_ScrollBarDemo 演示滚动条控件的使用方法。 05_SpinDemo 演示数值调节按钮的使用方法。 06...
我们都知道 Android 中使用 Spannable 可以实现 TextView 富文本的显示,但是在自定义控件中如何使用 Spannable 绘制不同样式的文字呢? 例如这种效果,标题中的 分数字61 是粗体,分 是常规字体,并且相对于 61 更...
本文实例讲述了Android中自定义一个View的方法。分享给大家供大家参考,具体如下: Android中自定义View的实现比较简单,无非就是继承父类,然后重载方法,即便如此,在实际编码中难免会遇到一些坑,我把自己遇到的...
重载控件消息处理函数WindowProc(),在View->ClassWizard中打开类向导,在消息映射中找到WindowProc,如下图: 图五 重载WindowProc() 四、编写代码 编写VariantToLong()转换函数,该函数代码如下: //类型转换,将...