
Andorid开发
u014044853
这个作者很懒,什么都没留下…
展开
-
自定义Android View组件——实现雷达图效果
今天在实习的公司,经理给了我一个任务,在学生教育系统的客户端打开的页面实现一个雷达图,将雷达图的数据分成语文、数学、外语、文科、理科和其他。 效果图是这样 于是我就开始了思考,为了这个自定义的view组件可以在以后进行复用,所以我增加了可变的成员变量count,代表要表示的项的总数。 根据雷达图的样式,可以获得大概的绘制步骤雷达图的形状实质是一个正n边形,原创 2016-02-26 22:19:16 · 8977 阅读 · 1 评论 -
说说Android CoordinatorLayout
5.0之后的Android系统,google推出了自己的移动端设计规范,Material Design,同时sdk包中也加入了support.design包,加入了很多符合md风格的组件。这里主要讲解一下CoordinatorLayout这个布局和它的使用。 什么是CoordinatorLayout 正如它的名字,这个布局是用来协调2个控件之间的联动。我们使用一个图片来说明这个布局的最终效原创 2017-06-19 20:09:58 · 402 阅读 · 0 评论 -
retrofit2源码解析
在Android客户端的项目网络请求实践中,对retrofit进行了实践和源码的阅读。从retrofit的用法入手,对retrofit进行解析。 首先看一下retrofit的基本用法: 第一步创建retrofit对象:Retrofit retrofit = new Retrofit.Builder() .baseUrl(baseUrl) .build();原创 2017-04-11 11:27:27 · 737 阅读 · 0 评论 -
Android View工作机制(4)— 我们该什么时候获取View的高宽?
通过前面三篇总结,我们对View的measure有了一定的了解,那现在考虑一种情况,Activity启动的时候获取某个View的宽高值,该怎么取出呢?我们现在onCreate或者onStart方法中实验一下, 我们在布局文件中添加一个TextView,命名为tv1。在onCreate或者onStart中加入LogLog.d("tvWidth", String.valueOf(tv1.getWidt原创 2016-06-11 15:01:49 · 1792 阅读 · 0 评论 -
Andorid View工作机制(3)—measure过程 下
昨晚在上一篇博客总结了一下View的measure过程,今天看一下ViewGroup是怎么进行测量的。查看ViewGroup的源码,搜索measure和onMeasure方法都没有。那是怎么回事呢?通过源码可以发现,ViewGroup是一个abstract class,这个抽象类没有重写其父类View的onMeasure方法。那么它是如何完成测量过程的呢?搜索measure关键字可以搜索到ViewG原创 2016-06-11 14:18:14 · 398 阅读 · 0 评论 -
Android View工作机制(2)—measure过程 上
为了理解View的测量过程,我们先要了解MeasureSpec。从字面意思看MeasureSpec是测量规格的意思。在Android中,MeasureSpec是一个32位的int值,高2位代表specMode,即测量模式,后30位代表品SpecSize,为某种测量模式下的规格大小。SpecMode有三种,分别为:1. UNSPECIFIED 父容器对View没有限制,View想多大就多大原创 2016-06-11 01:14:12 · 640 阅读 · 0 评论 -
Android View工作机制(1)—基本知识点
在介绍View的知识之前,我们先来了解下View的有关知识点。在Android中,WindowManager和DecorView之间通过ViewRootImpl建立关联。顾名思义,这个方法执行了一个遍历。以measure过程为例,performTraversals方法通过执行performMeasure方法进行顶级View的measure过程。之后在measure方法中会调用onMeasure方法原创 2016-06-11 01:00:06 · 456 阅读 · 0 评论 -
自定义View——利用下拉刷新组件实现上拉加载
在Android开发中,我们经常会用到列表下拉刷新和上拉加载的功能。 Google在support.v4包中提供了一个组件可以用来进行下来刷新,这个组件是SwipeRefreshLayout。 下面我们来看一下这个组件的使用: 在布局文件中加上xml代码<android.support.v4.widget.SwipeRefreshLayout android:id原创 2016-04-21 13:47:53 · 1927 阅读 · 0 评论 -
Android自定义View——开关按钮SwitchButton
在coding的过程中需要用到简单的switch-button,因为Android自带库没有此组件,使用就打算自定义view实现一个开关按钮。 我使用了view的组合,首先思考开关按钮的组成,分为2个部分,一个是底部的圆角矩形,一部分是在开关过程中变换位置的圆。 于是写出按钮的xml布局layout_switch.xml <?xml version="1.0" encoding="utf原创 2016-05-02 23:39:29 · 6647 阅读 · 1 评论 -
WebView深究之Android是如何实现webview初始化的
webview初始化关注Android加载webview内核的过程。我们从WebView的init过程中切入。 WebView的构造方法,最终都会调用WebView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes, Map<String, Object> javaScriptInt原创 2018-01-02 00:51:38 · 5984 阅读 · 0 评论