一:前言 View是Android中最基本的UI单元. 当一个View接收到了触碰事件时,会调用其onTouchEvent方法.方法声明如下: ? 1 2 3 4 5 6 7 /**  * Implement this method to handle touch screen motion events.  *  * @param event The motion event.  * @return True if the event was handled, false otherwise.…
在Android开发中,系统提供给我们的UI控件是有限的,当我们需要使用一些特殊的控件的时候,只靠系统提供的控件,可能无法达到我们想要的效果,这时,就需要我们自定义一些控件,来完成我们想要的效果了.下面,我就来讲讲自定义控件的那些事. 首先,我来讲讲Android的控件架构.Android的控件可以被分为两类,分别是ViewGroup和View.在ViewGroup中可以包含多个View,并且管理他们.控件树就是有这两个部分组成的,控件树的上层负责的是下层控件的绘制和测量以及交互.我们在Acti…
1. android 开发和普通的PC程序开发的,我觉得还是不要过度设计,因为手机开发,项目相对传统软件开发就小很多,而且手机的性能有限,过度设计代码mapping需要消耗的能相对就高,而且手机开发的迭代较快,有时需求变化也大,一种设计模式可能不适用所有的情况. 2. 那应该怎么做? 首先还得要有分层的思想.比如从整体架构上,数据库层,UI刷新,数据异步读取,网络请求. 更简单说视图层,控制层,数据流层,各层之间用接口作为隔离解耦. 在视图层用MVP架构,改变臃肿的Activity,处理方法都交…
在开发Android应用的过程中,难免需要自定义View,其实自定义View不难,只要了解原理,实现起来就没有那么难. 其主要原理就是继承View,重写构造方法.onDraw,(onMeasure)等函数.我自定义了个虚拟按键的View,效果图如下: 首先得自己写个自定义View类,这里我写了个VirtualKeyView类,继承自View类,实现了构造方法以及onDraw方法,以及实现了键盘按键的接口事件,实现代码如下: package com.czm.customview; import a…
在开发过程中,我们常常根据实际的需要绘制自己的应用组件,那么定制自己的监听事件,及相应的处理方法是必要的.我们都知道Android中,事件的监听是基于回调机制的,比如常用的OnClick事件,你了解它的运行机制吗?如果你已经了解了,那么就不必看了,如果没有,这篇文章会给你给你很大的益处. 自定义的View组建,一般的情况是继承自View类,实现其中的onDraw(canvas)方法,然后在其中绘制自己的组件.但是对于组件的监听事件该怎么办呢?监听事件的实现是用匿名类实现.下面先了解一下什么是 匿…
我需要实现下面的效果:   参考文章:https://blog.csdn.net/halaoda/article/details/78177069 涉及的View事件分发机制 https://www.jianshu.com/p/38015afcdb58  (最全面的原理性文章) https://www.jianshu.com/p/e99b5e8bd67b 点击绿色的圆 - Toast ("点击大圆的区域") 点击黄色的圆 - Toast ("点击小圆的区域") 点击…
2019独角兽企业重金招聘Python工程师标准>>> /** * 作者:David Zheng on 2015/11/7 15:38 * * 网站:http://www.93sec.cc * * 微博:http://weibo.com/mcxiaobing * * 微博:http://weibo.com/93sec.cc */ 个人交流QQ986945193 前言 课程介绍 自定义控件在android相当重要.要求:大家熟悉自定义控件的原理,熟悉自定义控件的使用步骤. 按类型划分,自定…
一.view视图的宽度和高度属性,属性值:固定和浮动两种状态 1属性为固定值 <View android:layout_width="30dp" android:layout_height="30dp" android:background="#F00" /> 上面代码中: view的宽度属性:android:layout_width ,属性值:30dp 表示宽度固定大小为30dp view的高度属性:android:layout_h…
转载请注明出处:http://blog.csdn.net/vnanyesheshou/article/details/73484527 本文已授权微信公众号 fanfan程序媛 独家发布 扫一扫文章底部的二维码或在微信搜索 fanfan程序媛 即可关注 上一篇总结了一下Handler的基本用法,但是对于其原理并不太清楚,这篇主要分析下其内部的原理.看一下其源码是怎么回事,从源码的角度理解Handler机制,Handler.Looper.MessageQueue之间的关系. 简介 先对这几个类做一…
自己定义View  实现 五子棋 配图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG92ZV9KYXZjX3lvdQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt=""> watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbG92ZV9KYXZjX3lvdQ==/fon…