场景 实现效果如下 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 新建Android项目,首先打开activity_main.xml 修改其为FrameLayout帧布局管理器,并添加Id属性和背景照片 <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:and…
一般有下载功能的应用都会有这样一个场景,需要一个图标来标识不同的状态.之前在公司的项目中写过一个,今天抽空来整理一下. 一般下载都会有这么几种状态:未开始.等待.正在下载.下载结束,当然有时候会有下载出错的状态.等待状态是指用户点击开始下载,但是线程池中没有空闲的线程来处理该次下载,所以状态为等待. 效果图: 这里我只是演示了一下下载和暂停的状态,其他状态没有演示,在代码中设置就可以了. 实现代码: 1.自定义View public class DownloadPercentView exten…
一般情况下,不直接使用View和ViewGroup类,而是使用使用其子类.例如要显示一张图片可以用View类的子类ImageView,开发自定义View组件可分为两个主要步骤: 一.创建一个继承自android.view.View类的View类,并且重写构造方法. 如下,新建一个名为MyView.Java的Java类文件,重写一个带Context的构造方法和onDraw()方法(用来重新绘制Activity窗口的背景). package com.example.lhb.contentprovid…
这里只做个汇总~.~独一无二 文章出处:http://blog.csdn.net/djy1992/article/details/9715047 Android自定义View研究--View中的原点坐标相关问题 我们自定义了View,但是有没想过一个问题,就是View中的(0,0)坐标,也就是原点坐标在哪??我们是不是有时候很困惑,接下来我们就来研究View中的原点坐标相关的问题. 一.new DuView时View的原点 我们通过从View中绘制一条从原点到右下角的线来看看这个View中的原点…
在Android开发中,系统提供给我们的UI控件是有限的,当我们需要使用一些特殊的控件的时候,只靠系统提供的控件,可能无法达到我们想要的效果,这时,就需要我们自定义一些控件,来完成我们想要的效果了.下面,我就来讲讲自定义控件的那些事. 首先,我来讲讲Android的控件架构.Android的控件可以被分为两类,分别是ViewGroup和View.在ViewGroup中可以包含多个View,并且管理他们.控件树就是有这两个部分组成的,控件树的上层负责的是下层控件的绘制和测量以及交互.我们在Acti…
http://www.jb51.net/article/83319.htm   这篇文章主要介绍了Android中制作自定义dialog对话框的实例分享,安卓自带的Dialog显然不够用,因而我们要继承Dialog类来制作自己的对话框,需要的朋友可以参考下   自定义dialog基础版很多时候,我们在使用android sdk提供的alerdialog的时候,会因为你的系统的不同而产生不同的效果,就好比如你刷的是MIUI的系统,弹出框都会在顶部显示!这里简单的介绍自定义弹出框的应用. 首先创建布…
由于需要重用同一个布局,于是在cellForRowAtIndexPath中把自定义view加在了cell上,我是这样设定view的frame的 var screenFrame = UIScreen.mainScreen().bounds cellView.frame = CGRectMake(,,screenFrame.width,cellHeight) 这里的cellHeight是常量,代表目的cell的高度,我这里写的是90, 但是在iphone6上测试时,有如下调试截图: 可以看到,自定义…
Android中很多地方使用的是适配器(Adapter)机制,那我们就要好好把这个Adapter利用起来,并且用出自己的特色,来符合我们自行设计的需要喽~~~ 下面先上一个例子,是使用ViewHolder进行显示效率优化过的工程: package com.test.listviewsimpleadapter;    import java.util.ArrayList;  import java.util.HashMap;  import java.util.List;  import java…
先看效果(原谅我的渣像素),进度的刻度.宽度.颜色可以随意设定: [项目github地址: https://github.com/zhangke3016/CircleLoading] 实现起来并不难,通过本文,我们可以学到: 1.自定义属性的使用. 2.shader的使用 3.自定义View中对onmeasure的处理 4.增深对PathMeasure工具类的了解 5.最主要的是对自定义View有个比较清晰的思路认识 一.原理介绍 做这样一个进度效果,我们可以拆分如下步骤来实现: 1.从外部圆环…
1.Android系统默认支持三种字体,分别为:“sans”, “serif”, “monospace 2.在Android中可以引入其他字体 . <?xml version="1.0" encoding="utf-8"?> <TableLayout xmlns:Android="http://schemas.android.com/apk/res/android" Android:layout_width="fill…
自己很少做自定义 View ,只有最开始的时候跟着郭神写了一个小 Demo ,后来随着见识的越来越多,特别是在开源社区看到很多优秀的漂亮的控件,都是羡慕的要死,但是拉下来的代码还是看不明白,而且当时因为时间因素,没有深入学习和研究控件和动画方面的知识,而是把更多时间花在了 Android 的异步通信和网络框架这一块. 目标效果 需求:实习公司一个产品,因为很多是临时用户,需要为这些没有自觉设置头像的用户,给予随机头像.生成的规则是根据用户用户名的第一个字符随机匹配颜色集. 从需求中我们可以知道:…
原文网址:http://forum.maiziedu.com/thread-515-1-1.html heckbox组件是一种可同时选中多项的基础控件,即复选框,在android学习中,Checkbox是一款非常重要的UI组件,由于它的展现形式美观性和协调性不符合我们的需求,我们需要自定义这个组件,方法很简单,只需要增加修改xml文件即可. 首先需要准备两张图片,一张是选中的图片,一张是未选中的图片. android开发设置选择框 在drawable下新建文件custom_checkbox.xm…
在开发Android应用的过程中,难免需要自定义View,其实自定义View不难,只要了解原理,实现起来就没有那么难. 其主要原理就是继承View,重写构造方法.onDraw,(onMeasure)等函数.我自定义了个虚拟按键的View,效果图如下: 首先得自己写个自定义View类,这里我写了个VirtualKeyView类,继承自View类,实现了构造方法以及onDraw方法,以及实现了键盘按键的接口事件,实现代码如下: package com.czm.customview; import a…
英文原文: http://trickyandroid.com/saving-android-view-state-correctly/ 转载此译文须注明出处. 今天我们聊一聊安卓中保存和恢复view状态的问题.我刻意强调View状态是因为我发现这个过程要比保存 Activity 和 Fragment状态稍微复杂,还有一个原因是因为网上有太多“重复造的轮子”(有时还是奇丑无比的轮子). 为什么我们需要保存View的状态? 这个问题问的好!我坚信移动应用应该帮助你解决问题,而不是制造问题. 想象一下…
参考<疯狂android讲义>第2版 2.1节P48,对应CustomViewDemo.zip. 若在开发过程中,发现现有的view均不能满足需要,可以自定义一个view. 自定义一个view 的关键在于重写view类的几个核心方法,如onDraw, onTouchEvent等. 自定义view类: DrawBall.java package com.ljh.customviewdemo.ui; import android.content.Context; import android.gr…
项目中用到自定义尺子的样式: 原代码在github上找的,地址:https://github.com/QQabby/HorizontalRuler 原效果为 因为跟自己要使用的view稍有不同  所以做了一些修改,修改的注释都放在代码中了,特此记录一下. 首先是一个自定义View: public class RuleView extends View { private Paint paint; private Context context; ; /** * 起点x的坐标 */ private…
通过讨论这个问题,我们能够见识到google是对面向对象模式的理解,能够理解android底层的一些调用.这也是一道很常见的面试题. 我们这篇文章就来解决这四个问题: Android  中view的显示视图么? Activity,window,View的关系是什么? LayOutInflater 填充是什么? LayOutInflater 具体怎么做? 首先,我们从activity开始说起,说起activity我们都要知道setcontentview和attach方法.setcontentvie…
我需要实现下面的效果:   参考文章:https://blog.csdn.net/halaoda/article/details/78177069 涉及的View事件分发机制 https://www.jianshu.com/p/38015afcdb58  (最全面的原理性文章) https://www.jianshu.com/p/e99b5e8bd67b 点击绿色的圆 - Toast ("点击大圆的区域") 点击黄色的圆 - Toast ("点击小圆的区域") 点击…
参考<疯狂android讲义>第2版 2.1节P48,对应CustomViewDemo.zip. 若在开发过程中,发现现有的view均不能满足需要,可以自定义一个view. 自定义一个view 的关键在于重写view类的几个核心方法,如onDraw, onTouchEvent等. 自定义view类: DrawBall.java package com.ljh.customviewdemo.ui; import android.content.Context; import android.gr…
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相当重要.要求:大家熟悉自定义控件的原理,熟悉自定义控件的使用步骤. 按类型划分,自定…