![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android自定义
爆米花9958
这个作者很懒,什么都没留下…
展开
-
自定义ImageView实现图片手势滑动、放大缩小效果
上一节说了通过自定义来加载超大图片,同时实现手指的拖动效果。不过,另一种情况就是,我们希望应用能够加载整张图片,如果图片太大就先压缩,如果小于屏幕就直接显示,同时用户可以拖拽移动和缩放图片大小,梳理下流程:1.自定义View继承ImageView,重新onDraw方法2.在onDraw先画图片,图片大于屏幕就把图片缩小后显示,图片小于屏幕就直接显示,显示之前要计算显示图片的Rect,R原创 2016-05-23 19:33:29 · 4221 阅读 · 0 评论 -
自定义初学5——自定义View显示图片
前面已经简单介绍过一些自定义View的实现,现在再利用自定义View实现显示一张图片的功能 2、在自定义Vi原创 2016-04-22 11:45:57 · 7074 阅读 · 0 评论 -
自定义初学4——自定义属性
前面只是简单说了自定义View,接下来我们再来个增强版——自定义View的属性1、自定义View的属性,首先在res/values/ 下建立一个attrs.xml , 在里面定义我们的属性。 这里简单介绍一下控件的常用属性原创 2016-04-18 15:17:37 · 489 阅读 · 0 评论 -
自定义初学3——实现触屏事件
在上一篇中,我们注意到自定义View中有个onTouchEvent()方法,看名字就知道是干什么的了。通常我们处理触屏事件会用TouchListener和Event Handler完成。前者需要扩展OnTouchListener并实现onTouch方法,后者需要扩展控件并实现onTouchEvent方法例如:button.setOnTouchListener(new VIew.OnTo原创 2016-03-18 13:59:24 · 397 阅读 · 0 评论 -
自定义初学2——扩展View
倘若我们需要的功能找不到对应的系统控件了,这时我们就只能自己绘制了。首先定义一个继承View的基类,然后重写View类的一个或多个方法。通常可以被重写的方法有这些:onFinishInflate(): 这是一个回调方法,当应用从XML布局文件中加载组件时,该方法将被调用。onMeasure(int,int): 该方法用来检测View组件及他所包含的所有子组件的大小。onLayo原创 2016-03-03 15:54:43 · 456 阅读 · 0 评论 -
自定义初学1——扩展系统控件
在Android中自定义控件时,如果Android系统中已存在对应的控件,就应该扩展功能相近的系统控件,这样既可以减少工作量,又可以避免处理复杂的绘图逻辑。代码复用是程序开发的一条重要原则,因此一定不要盲目的扩展View。好了,先从一个扩展的TextView入手吧public class CustomTextView extends TextView {}系统会提示原创 2016-03-02 16:08:54 · 1433 阅读 · 0 评论 -
自定义布局实现侧滑菜单1
说起侧滑菜单,应该是一个很Low的话题了,现在几乎所有的app都有这个功能,但是既然大家都在用,那就再说说吧。本文参照郭霖大神的文章,我又重新组织了下,大家可以看原文章。首先说一下实现原理,其实说白了也很简单,就是我们自定义一个布局,在这个自定义布局中实现滑动菜单的功能,然后只要在Activity的布局文件里面引入我们自定义的布局,这个Activity就拥有了滑动菜单的功能了。一个Activity翻译 2016-10-01 20:51:33 · 1053 阅读 · 0 评论 -
自定义布局实现侧滑菜单2
我们在上一节已经说了侧滑菜单的实现原理,并且实现了单侧菜单,这一节我们就完善项目,实现双向侧滑菜单。原理我们都说了,不明白的看上节,好了,直接上代码/** * 双向滑动菜单 */public class SlidingLayout2 extends RelativeLayout implements OnTouchListener {/** * 滚动显示和隐藏左侧布局时,手指滑动需要达翻译 2016-10-09 22:51:53 · 628 阅读 · 0 评论 -
ViewGroup2——自定义实现流式布局
Android中的线性布局LinearLayout,只能横向或纵向排列子控件,而且横向排列时不能自动换行。实际上,通过扩展ViewGroup就能够实现控件自动的往右添加,如果当前行剩余空间不足,则自动添加到下一行,也就是所谓的流式布局。自定义CustomViewGroup.java如下public class CustomViewGroup extends ViewGr原创 2016-05-06 19:25:25 · 1410 阅读 · 0 评论 -
ViewGroup1——自定义布局
http://blog.csdn.net/lmj623565791/article/details/38339817平时开发,系统提供的几个布局基本就能满足我们的需求了。如果系统提供的布局无法满足需求,我们可以扩展ViewGroup类来实现自定义布局控件。由上图可知,ViewGroup继承自View,但他又是一个管理view的容器,我们在写布局xml的时候,会告诉容器需原创 2016-04-27 15:06:43 · 404 阅读 · 0 评论 -
自定义View利用手势检测实现图片放大缩小
上一节我们是通过重写自定义View的onTouchEvent方法来实现我们的图片放大缩小功能的,我们也发现现在app中,图片预览功能很常见的,用户基本已经形成条件反射,看到小图,点击看大图,看到大图两个手指开始进行放大,放大后,开始移动到指定部位,实际上,Android系统本身也是有手势检测这个类来帮助我们实现相关功能的。首先了解要用到的几个类:Matrix在图原创 2016-05-28 16:35:11 · 2423 阅读 · 1 评论 -
自定义属性剖析
上一节已经说了自定义属性的用法,实现步骤有如下几步:自定义一个CustomView(extends View )类编写values/attrs.xml,在其中编写declare-styleable和attr等标签元素在布局文件中CustomView使用自定义的属性(注意添加自己的namespace)在CustomView的构造方法中通过TypedArray获取自定义属性原创 2016-04-19 16:17:00 · 408 阅读 · 0 评论 -
自定义View显示超大图片
上一节(自定义初学5——自定义View显示图片)已经说了如何自定义View显示图片。做android时,加载图片是避免不了的,加载网络图片还需要异步加载,最烦人的就是经常出现OOM,为了避免这样的问题,我们一般这样解决:根据图片控件的大小对图片进行压缩显示。如果图片数量非常多,则会使用LruCache等缓存机制,将所有图片占据的内容维持在一个范围内。有时加载图片还会原创 2016-05-08 19:39:21 · 2960 阅读 · 0 评论 -
MPAndroidChart 教程:开始 Getting Started
入门本章介绍使用此库的基本设置。添加依赖首先,将此库的依赖项添加到项目中。如何执行此操作在此存储库的用法部分中进行了描述。Gradle是使用此库作为依赖项的推荐方法。创建视图要使用LineChart, BarChart, ScatterChart, CandleStickChart, PieChart, BubbleChart or RadarChart ,请在.xml中定义它...翻译 2018-10-27 20:48:14 · 397 阅读 · 0 评论