自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Z·Pan

以中庸之道处世,以逍遥之道处心

  • 博客(54)
  • 问答 (2)
  • 收藏
  • 关注

原创 Android 技术文章网址

个人简书https://www.jianshu.com/u/679b1ba9d73d写在顶端的技术网站网址:Android 开发技术周报 -- http://www.androidweekly.cn/ 满满的都是福利,干货集中营 -- http://gank.io/download 干货集中营简书 -- http://www.jianshu.com/c/15cc86cc1e9d  ...

2017-09-21 10:12:21 1153

原创 Android Gradle配置资源前缀

资源冲突公司在不断推进组件化,多个Module开发,当然也存在许多需要注意的问题。是无法保证多个Module中的资源命名完全不同,就可能会出现资源引用问题,造成资源冲突。解决方式可以根据不同Module功能来设置资源前缀,从而保证资源命名的唯一性。提问团队开发,怎么保证每个人的资源命名都能遵守规则,设置前缀?那么能不能动态检测资源命名是否设置前缀?Gradle 配置在android...

2018-09-29 11:27:35 6298 2

原创 Android 完美实现手机号344格式化效果

一、前言:在展示手机号码的时候,会遇到手机号按照344格式效果,这种效果的实现遇到过两次了,也踩过了许多的坑,在这里记录一下一个完美实现这种效果的方式。输入、插入、删除等光标位置停留比较好的交互效果。二、效果:关于输入空格崩溃的情况在简书有修复https://www.jianshu.com/p/1c949029d6b2三、代码实现:public class ZpPhone...

2018-03-08 18:00:09 2805 1

原创 Android 几个常见异常且容易被忽略的地方

一、空指针异常 private String str; private void initView() { int a = str.length(); Log.e("zpan","=========" + a); }Caused by: java.lang.NullPointerException: Attempt to ...

2018-03-06 20:32:10 454

原创 Android Layer_list 实现倒三角效果

写在前面的:倒三角的图标应用场景挺多,如:地图覆盖物方向标识等。一般这种图标UI会给出切图,当然这种方式也是比较简单的实现方式,但是多多少少也是增加了安装包的大小,在这里看看代码中怎么实现。效果图:代码实现: <TextView android:id="@+id/textView" android:layout_width="80dp" ...

2018-03-01 11:20:35 4312

原创 Git 命令行使用总结

一、用户信息设置用户名、邮箱$ git config  –-global user.name "xxx"$ git config  –-global user.email "xxx"修改用户名、邮箱$ git config  –-global user.name "xxx"$ git config  –-global user.email "xxx"查看配置信息

2018-01-30 20:36:07 323

原创 Android studio gradle 版本统一管理配置

前言随着项目的不断迭代更新,项目变的也越来越大,为了减少编译时间,开发效率,大多采用模块化,组件化开发,moudle 的个数也会随着增加,那么一些依赖或sdk版本升级的时候,每个 moudle 的 gradle 可能都需要修改一遍,统一管理配置就显得比较重要了。网上也给出了几种实现方式,这里只针对个人觉得比较好的方式做介绍。一、配置在 project 根目录建一个文件夹 config,

2018-01-26 13:45:43 1807

原创 Android studio gradle 通用配置简单介绍

前言Gradle 是一种依赖管理工具,基于 groovy 语言。studio 是通过 Gradle 来构建项目的,注:以下代码非运行状态,只是对常用代码做介绍;注释比较详细,不做过多的内容介绍一、project 根目录下的 build.gradlebuildscript { /** * repositories 声明代码托管仓库 jcenter()、mave

2018-01-24 17:14:22 285

原创 Android 高级进阶-App瘦身经验

一、APK 增大的原因Java 代码文件: classes*.dex;Native 代码文件:lib 目录下的 .so 文件;资源文件:包括 assets 目录、res 目录以及 resources.arsc 索引表文件(用来描述具有ID值的资源的配置信息);二、优化图片资源占用空间 public static enum CompressFormat { JPEG, ...

2018-01-23 16:42:44 237

原创 Android 高级进阶- Android 开源项目

一、App 的整体架构App 结构,应具有清晰的层次划分、同一层模块间充分解耦、模块内部符合面向对象设计六大原则。App 的整体架构整体分为:应用层:直接面向对象,如:支付,地图,社交等。基础框架层:组件层(二维码、推送、手势、事件总线等)、基础层(网络通信、数据库、JSON解析等)、跨平台层(日期、日志、线程等)。二、选择开源框架特性:是否满足项目的需求;可用性:是否提供简洁的API;性能:性能...

2018-01-18 18:58:34 1182

原创 Android 高级进阶- 数据序列化

前言:序列化:将数据结构或对象转换成可用于存储或传输的数据格式的过程,在序列化期间,数据结构或对象将其状态信息写入到临时或持久性存储中;反序列化:将序列化生成 的数据还原成数据结构或对象的过程。一、SerializableSerializable 是JDK提供的接口,序列化方式是基于磁盘或网络的。Serializable 接口是一种标识接口,也就是无需实现方法,便能实现序列化。缺点:使用反射机制,...

2018-01-18 11:15:35 223

原创 Android 高级进阶 - 动画之属性动画(Property Animation)

前言:补间动画 pk 属性动画补间动画不足以覆盖所有动画场景,在功能和扩展方面存在缺陷;属性动画则弥补了这些缺陷。01、补间动画只对View进行操作;属性动画也能对非View对象进行操作(如自定义View中point对象,自定义View也就有了动画效果)。02、补间动画只能够实现移动、旋转、缩放、透明度;属性动画则不然。03、补间动画只改变了View的显示效果,不能改变View的属性(如View的...

2018-01-17 15:59:04 210

原创 Android 高级进阶 - 动画之补间动画(Tween Animation)

前言:无需定义动画过程的每一帧,只需要定义出发和结束这两个关键帧,并指定动画变化的时间和方式。四种基本效果:透明度(Alpha)、大小(Scale)、位移(Translate)、旋转(Rotate)一、插值器(Interpolator)Interpolator 类是一个空接口,继承自 TimeInterpolator。它负责控制动画的变化速度,如:匀速、加速、减速、抛物线等多种速度变化。 /...

2018-01-12 19:38:53 265

原创 Android高级进阶 - 动画之逐帧动画(Frame Animation)

前言Android 3.0 之前,有两种类型:逐帧动画和补间动画;Android 3.0 发布时,Android SDK 又提供了更加简单的属性动画;Android 4.4 发布时,Android SDK 又提供了 android.transition 框架,更直观实现动画。一、逐帧动画也叫 Drawable Animation。有两种方式可以定义 XML 资源文件和代码实现。二、XML 资源文件...

2018-01-12 12:35:44 485

原创 Android 高级进阶 - View的绘制流程

前言Android 的UI管理系统的层级关系:PhoneWindow 是Android 系统中最基本的窗口系统,每一个Activity 会创建一个。PhoneWindow 是Activity 和View 系统 交互的接口。DecorView 本质上是一个FrameLayout ,是Activity 中所有View 的祖先。一、绘制的整体流程启动Activity,绘制从根视图ViewRoot 的pe...

2018-01-11 09:32:19 385

原创 Android 高级进阶 - 触摸事件传递机制

一、触摸事件的类型触摸事件对应的是MotionEvent类,事件类型主要有如下三种ACTION_DOWN:按下操作ACTION_MOVE:按下屏幕后滑动操作ACTION_UP:离开屏幕操作注:ACTION_DOWN和ACTION_UP这两个操作是一定存在的,ACTION_MOVE操作是否存在要视情况而定。二、事件传递的三个阶段事件传递的三个阶段如下:01、分发(Dispatch)对应 dispat...

2018-01-09 20:35:34 218

原创 Android 常用单例模式简单介绍

/** * 方式一 * instance 单例初始值是null,还未构建,则构建单例对象并返回;是懒汉模式 - 线程不安全 * instance 单例对象一开始就被new 出来,主动构建,则不需要判空操作;是饿汉模式 - 线程安全 */ private ZpDanLiDemo(){} private static ZpD...

2018-01-02 11:14:32 239

原创 Android CountDownTimer 倒计时器的简单使用

一、写在前面的在Android应用中几乎都能看到,闪屏页或者欢迎页右上角有一个 “倒计时 + 跳过” 的功能,还有就是获得验证码的倒计时功能,有些人会想到延迟的实现方式,在这里通过实用Android封装好的类 CountDownTimer 就能轻松实现,其内部原理就是通过Handler机制实现的。二、效果图(有待添加)三、CountDownTimer 介绍1、CountDown...

2017-12-06 16:49:39 19870

原创 Android 代码动态修改XML设置的背景

01、通过Drawable的方式改变shap背景颜色 // 以 shap 作为背景,改变 shap 的背景颜色 TextView test = (TextView) findViewById(R.id.tv_test); GradientDrawable drawable = (GradientDrawable) test.getBackgro...

2017-10-30 09:57:44 2353

原创 Android 常见错误以及解决方法

01、解决方案:Gradle的一个Bug,解决办法是,删除项目根目录的.gradle文件夹,然后Clean ,Rebulid。 02、git 提交代码无法提交问题Unable to create 'D:/work/******/.git/index.lock': File exists. If no other git process is currently runnin...

2017-10-22 07:38:27 1839

原创 Android 获得Url、Uri字符串后面拼接的参数

01、写在前面有些需求根据url、uri携带一定的参数,当然有很多种实现方式,这里记录一下比较简单、高效的的方式,方便以后使用。02、代码实现 // 得到 uri 携带的参数 private void getUriParams(){ String url = "http://www.zpan.com/get/uri/params?zhang=e5e5e5...

2017-10-20 16:37:13 6695

原创 Android 标题栏和状态栏随ScrollView滑动颜色改变轻松实现

01、概述:在开发过程中,这样的需求也是常见的,随着ScrollView 的滑动,标题栏和状态栏背景透明度发生变化。有多中实现方式,在这里记录一下自己用到的一种。02、效果:03、代码实现:public class ZpScrollViewActivity extends Activity{ private View titleLine; priv

2017-10-10 16:58:49 2543

原创 Android Html设置TextView的颜色、加粗样式

01、概述在开发需求中,会遇到字符串中的某个部分变色,加粗的需求。当然可是使用SpannableString 来实现,这里记录一下通过Html方式来实现这种效果02、代码 textView.setText(Html.fromHtml(this.getString(R.string.ceshi, "01.01", "26"))); textView1.setText(...

2017-10-09 17:49:39 3217

原创 Android RecyclerView与ListView比较

01、RecyclerView 概述RecyclerView 集成自 ViewGroup 。RecyclerView是Android-support-V7版本中新增的一个Widgets,官方对于它的介绍是:RecyclerView是ListView的升级版本,更加先进和灵活。Android L 之后,Google 提供了RecyclerView视图化控件,5.0之前如果想要使用的话,可以添...

2017-09-27 20:16:32 292

原创 Android 杂乱知识点

01、设置状态栏的高度布局<View android:id="@+id/status_line" android:layout_width="match_parent" android:layout_height="0dp" />代码设置int statusBarHeight = mContex...

2017-09-08 09:40:29 194

原创 Android SeekBar的使用 - 进度条的另一种实现方式

01、概述:SeekBar是进度条。我们使用进度条时,可以使用系统默认的进度条;也可以自定义进度条的图片和滑块图片等。02、代码<SeekBar android:id="@+id/seekbar_self" android:layout_width="match_parent" android:layout_height="wra...

2017-09-08 09:38:15 373

原创 Android ScrollView嵌套listView显示不全

01、ScrollView嵌套ListView显示不全的问题 -- 方法计算条目高度 /** * scrollview嵌套listview显示不全解决 * * @param listView */ public static void setListViewHeightBasedOnChildren(ListView listView) {...

2017-09-04 14:52:40 271

原创 Android 背景透明度设置总结

一、写在前面的在需求上遇到背景设置透明度还是比较常见的,设置透明度有几种方式,但是不同的场景应用下,不同的方式可能会出现一些问题。针对开发过程中的需求做以下总结。二、先看效果图图1、   图2、图3、  图4介绍:图1、蓝色头部和输入框背景初始状态   图2、点击按钮01,输入框的透明度不起作用,和title的透明度一样   图3、点击按钮02,背景透明

2017-06-13 10:28:39 5432

原创 Android 背景样式shape -- line线、ring环

一、写在前面的:前面分别介绍了Rectangle矩形、oval椭圆,下面介绍一下ring环、line线。作为一个程序员,要是觉得没事做,那是很可怕的事情,放眼一瞅,编码的世界太庞大了,还有很多需要学习的地方。一个行之有效的适合自己的学习方式是很有必要的,在这慢慢的编码路程中,且行且学习吧。。。二、ring环、line线效果:    三、ring代码实现:特殊属性:shape

2017-05-17 12:33:44 1714

原创 Android 背景样式shape -- oval椭圆、圆

一、写在前面的:上一篇介绍了Rectangle矩形,下面介绍一下oval椭圆的使用。oval用来绘制椭圆,而在实际应用中,更多的是用来绘制正圆,例如:消息个数提示背景,圆形按钮等。二、效果:三、代码实现: <TextView android:layout_width="wrap_content"

2017-05-17 10:55:28 5562

原创 android 背景样式shape -- rectangle矩形

一、写在前面的:TextView、Button、EditText、ProgressBar、Toast、Checkbox等控件的样式背景,都可以用shape来实现,可以优化资源的使用,在一个项目中,个人觉得各种资源统一管理起来最好,公用一套,方便后期管理,不管以后是你自己管理,还是有后来者接手,都能大大提高工作效率,相信你也不想接手一个写的很乱的项目,都说“见字如见人”,作为一个程序员来说,咱们

2017-05-17 09:55:50 2891

原创 Android 搜索页-搜索历史条目动态添加(LinearLayout动态添加条目)

一、需求:要记录用户的搜索历史,并动态的展现出来,每行展示两个条目,最多十条条目。效果图如下:大概的效果展示一下,其他优化的地方这里暂不做处理(如:单个条目的背景优化,条目的选择状态UI优化等)二、思路:布局中维护一个LinearLayout,根据条目个数判断行数,根据行数动态添加子LinearLayout,每行显示两个TextView,最后根据行数和每行条目显示位

2017-05-12 17:41:07 612

原创 Android Color(颜色)解析

颜色的多种表达方式,在做一个新项目准备的时候,一定要考虑好颜色的统一管理,省的后面给自己或者给后来者找麻烦。

2017-05-10 14:43:06 10772

原创 Android 仿支付宝搜索结果页,字符串部分文字显示高亮

最近收到一个需求就是,搜索的关键词,在搜索结果页的搜索条目上高亮显示。类似于支付宝搜索结果页的效果。经过一番思虑之后,感觉还是比较简单的,直接上代码123456789101112131415

2017-05-09 15:13:23 2274 1

原创 InputFilter全解

注:InputFilter主要是对输入的文本进行过滤的,里面只有一个filter方法123456789101112131415161718192021222324

2017-02-10 04:41:43 3201

原创 笔记 - 09 -- 异常问题

android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity  context requires the FLAG_ACTIVITY_NEW_TASK flag. Is this really what you want? 从一个Activity中要通过intent调出另一个Act...

2016-11-21 11:32:32 257

转载 GitHub 优秀的 Android 开源项目

原文地址为http://www.trinea.cn/android/android-open-source-projects-view/,作者Trinea主要介绍那些不错个性化的View,包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar及其他如Dialog、Toast、EditT

2016-02-26 17:09:46 1922

转载 EventBus3.0使用总结

文章转自:http://blog.csdn.net/u012702547/article/details/50688236在Android中,接口回调已经能够处理掉大部分业务需求了,实在太变态的需求就用广播也能够完成,自己写的性能好出问题也好解决。。。。。工作需要,不得不看看EventBus的用法,今天就来介绍一下学习经验。首先就是引入这个东东,我是直接在maven上下

2016-02-25 16:34:18 297

转载 Android应用开发之所有动画使用详解

题外话:有段时间没有更新博客了,这篇文章也是之前写了一半一直放在草稿箱,今天抽空把剩余的补上的。消失的这段时间真的好忙,节奏一下子有些适应不过来,早晨七点四十就得醒来,晚上九点四十才准备下班,好像最近都与世隔离了一样;然而自己每天还要熟悉一大套自己不熟悉、各种协议差异的代码。其实换个角度考虑还是蛮好的,忙,但很充实,有新的挑战与收获。【工匠若水 http://blog.csdn.net/y

2016-02-25 16:13:20 633

转载 Android 使用NineOldAndroids实现绚丽的ListView左右滑动删除Item效果

转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/18311877),请尊重他人的辛勤劳动成果,谢谢!今天还是给大家带来自定义控件的编写,自定义一个ListView的左右滑动删除Item的效果,这个效果之前已经实现过了,有兴趣的可以看下Android 使用Scroller实现绚丽的ListView左

2016-02-25 15:54:33 436

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除