- 博客(46)
- 收藏
- 关注
原创 Widget 窗口小部件
Widget 窗口小部件Widget的简介 App Widget是应用程序窗口小部件(Widget)是微型的应用程序视图,它可以被嵌入到其它应用程序中(比如桌面)并接收周期性的更新。你可以通过一个App Widget Provider来发布一个Widget。Widget的使用步骤1、创建一个类(其实是一个广播接收者)继承AppWidgetProvide
2017-02-23 15:33:01
573
2
原创 Android中的状态选择器
Android中的状态选择器概述 在drawable/xxx.xml中配置,通过配置selector,可以使系统运行时根据控件对象的状态使用相应的图片、文字等。selector中的常用属性android:state_selected 控件选中状态,可以为true或falseandroid:state_focused 控件获
2017-02-23 13:15:51
567
原创 android控件的属性
android控件的属性属性名称描述:Android:autoLink 设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all)。这里只有在同时设置text时才自动识别链接,后来输入的无法自动识别。android:autoText 自动拼写帮助。这里单独设置是没
2017-02-23 12:54:08
359
原创 ViewDragHelper
ViewDragHelper一、概述 在自定义ViewGroup中,很多效果都包含用户手指去拖动其内部的某个View(eg:侧滑菜单等),针对具体的需要去写好onInterceptTouchEvent和onTouchEvent这两个方法是一件很不容易的事,需要自己去处理:多手指的处理、加速度检测等等。 好在官方在v4的支持包中提供了ViewDragHelper这
2017-02-23 12:48:47
394
原创 ViewPager
ViewPager 这是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api。而viewpager就是其中之一利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等。那如何使用它呢,与LisstView类似,我们也需要一个适配器,他就是PagerAdapter。ViewPager的功能就是可以使视图滑动,就像Lanuch
2017-02-23 12:16:06
464
原创 插值器
插值器插值器的简介 首先要了解为什么需要插值器,因为在补间动画中,我们一般只定义关键帧(首帧或尾帧),然后由系统自动生成中间帧,生成中间帧的这个过程可以成为“插值”。插值器定义了动画变化的速率,提供不同的函数定义变化值相对于时间的变化规则,可以定义各种各样的非线性变化函数,比如加速、减速等。下面是几种常见的插值器: Interpolator 对象资源ID功能作用。 Accelera
2017-02-21 17:34:56
480
原创 动态适配图片工具类
RatioLayout --> 动态适配图片package com.heima.googleplay.view;import android.content.Context;import android.content.res.TypedArray;import android.util.AttributeSet;import android.widget.Fram
2017-02-21 17:24:40
298
原创 数据加密
数据加密 今天我们来讲一下安卓中的数据加密,那么一讲到数据加密,大家首先想到的可能是MD5,还有的可能会想到我们在百度地图那天用到的SHA1码.其实除了这两种,还有其他的加密方式,今天给大家介绍一下.加密按技术种类来分,有四种:1. 根本不考虑解密问题;2. 私用密钥加密技术:对称式加密(Symmetric Key Encryption):对称式加密方式对加密
2017-02-21 12:22:45
405
原创 正则表达式语法
正则表达式语法 一个正则表达式就是由普通字符(例如字符 a 到 z)以及特殊字符(称为元字符)组成的文字模式。该模式描述在查找文字主体时待匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。这里有一些可能会遇到的正则表达式示例:Visual Basic Scripting EditionVBScript
2017-02-21 12:21:12
228
原创 Java中的引用
java对象的强引用,软引用,弱引用和虚引用 众所周知,Java中是JVM负责内存的分配和回收,这是它的优点(使用方便,程序不用再像使用c那样操心内存),但同时也是它的缺点(不够灵活)。为了解决内存操作不灵活这个问题,可以采用软引用等方法。 在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及状态,程
2017-02-21 12:19:19
228
原创 HTTP协议详解
HTTP协议详解 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。HTTP协议的
2017-02-21 12:17:26
267
原创 HTTPS
HTTPS1、什么是 HTTPS? HTTPS (基于安全套接字层的超文本传输协议 或者是 HTTP over SSL) 是一个 Netscape 开发的 Web 协议。 你也可以说:HTTPS = HTTP + SSL HTTPS 在 HTTP 应用层的基础上使用安全套接字层作为子层。2、为什么需要 HTTPS ? 超文本传输协议 (HTTP) 是一个用来通
2017-02-21 12:14:09
295
原创 xml
XML1. XML概述1.1 xml:xml一种数据存储格式,这种数据存储格式在存储数据内容的同时,还能够保存数据之间的关系1.2 xml保存数据的方法:xml利用标签来保存数据的内容,利用标签之间的嵌套关系来保存数据之间的关系。1.3 xml的应用场景:1.3.1 利用xml跨平台的特性,用来在不同的操作系统不同的开发语言之间传输数据。如果说java是一门跨平
2017-02-21 12:08:25
747
原创 OOM
OOM Android的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是16M,有的机器为24M。我们平常看到的OutOfMemory的错误,通常 是堆内存溢出。移动开发和web开发的最大的区别是设备资源受限,对一般手机应用,这个资源是相当有限的,堆内存的上限值只有16M。Android的缺 省值是16M(某些机型是24M),而对于普通应用这是不能改的,当应
2017-02-20 22:40:05
213
原创 ANR
ANRANR (Application Not Responding) ANR定义:在Android上,如果你的应用程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应用程序无响应(ANR:Application Not Responding)对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”。所以一个流畅的合理的应用程序中不能出现a
2017-02-20 22:07:55
255
原创 Gallery
Gallery Gallery是一个水平的列表选择框,它允许用户通过拖动来查看上一个、下一个列表选项。下面是控件Gallery的额外的属性: 要使用一个Gallery非常的简单,只需要设置填充它内容的Adapter即可。从Adapter的体系上来看(可以看看:Android中的Adapter),显然使用BaseAdapter是最好的选择,当然Simp
2017-02-20 20:50:37
505
原创 SVG
SVG1、什么是 SVG ? SVG是指可伸缩矢量图形 (Scalable Vector Graphics),它不同于传统的位图,不是通过存储图像中每一点的像素值来保存与使用图形,而是通过 XML 文件来定义一个图形,通过一些特定的语法和规则来绘制出我们所需的图像——同样是使用一张图片,SVG 的方式是事先定义好怎么去画这个图,然后等要用的时候再把它去画出来,而
2017-02-20 20:38:40
357
原创 FragementStatePagerAdapter
FragementStatePagerAdapter1.FragmentPagerAdapter和FragementStatePagerAdapter的区别 分别给ViewPager设置FragmentPagerAdapter和FragmentStatePagerAdapter,将ViewPager左右滑动一圈,通过查看日志,来理解这两种Adapter的区别。FragmentPag
2017-02-20 19:11:49
489
原创 WebView
WebView 目前很多android app都内置了可以显示web页面的界面,会发现这个界面一般都是由一个叫做WebView的组件渲染出来的,学习该组件可以为你的app开发提升扩展性。WebView的一些优点:1、可以直接显示和渲染web页面,直接显示网页2、webview可以直接用html文件(网络上或本地assets中)作布局3、和JavaScri
2017-02-20 12:58:39
305
原创 JavaScript的基本介绍
JavaScript1、JavaScript的简介(1)什么是JavaScript:是基于对象和事件驱动的语言,应用于客户端。* 基于对象:** java是面向对象,使用对象需要创建** js里面提供好了一些对象,直接使用* 事件驱动:每次滑动鼠标,变换一张图片* 客户端:指的是浏览器(2)JavaScript的特点(三个)第一个
2017-02-20 12:55:46
694
原创 Android Studio的使用设置
Android Studio的使用设置常用设置: 注意:第一次打开如果崩溃时需要配置 在Android Studio安装目录下的 bin 目录下,找到 idea.properties 文件,在文件最后追加 disable.android.first.run=true,避开连接谷歌服务器更新SDK 1.Tab不用4个空格Code Style->Jav
2017-02-19 22:08:28
574
原创 android中跨进程通讯的4种方式
android中跨进程通讯的4种方式 由于android系统中应用程序之间不能共享内存。因此,在不同应用程序之间交互数据(跨进程通讯)就稍微麻烦一些。在android SDK中提供了4种用于跨进程通讯的方式。这4种方式正好对应于android系统中4种应用程序组件:Activity、Content Provider、Broadcast和Service。
2017-02-19 22:05:03
444
原创 Android 系统的架构
Android 系统的架构 android 的系统架构和其操作系统一样,采用了分层的架构。从架构图看, android 分为四个层,从高层到低层分别是应用程序层、应用程序框架层、系统运行库层和 linux 核心层。1. 应用程序 Android 会同一系列核心应用程序包一起发布,该应用程序包包括 email 客户端, SMS 短消息程序,日历,地图,浏览
2017-02-19 22:03:53
261
原创 Android开发去除标题栏title
Android开发去除标题栏titleAndroid开发去除标题栏title其实非常简单,他有两种方法,一种是在代码中添加,另一种是在AndroidManifest.xml中添加:1、在代码中实现: 在此方法setContentView(R.layout.main)之前加入: requestWindowFeature(Window.FEATURE
2017-02-19 22:02:45
37751
6
原创 颜色渐变工具类
颜色渐变工具类 通过一个百分比来设置颜色从一个色调变成另一个色调的渐变过程;ColorUtil.evaluateColor(float fraction, Object startValue, Object endValue)方法中的三个参数:@param fraction : 百分比@param startValue: 设置颜色的开始颜色@para
2017-02-19 22:01:40
254
原创 View移动的相关方法
View移动的相关方法一.View移动的相关方法总结: 1.通过改变view在父View的layout位置来移动,但是只能移动指定的View: view.layout(l,t,r,b);view.offsetLeftAndRight(offset);//同时改变left和rightview.offsetTopAndBottom(offset);//同
2017-02-19 22:00:34
213
原创 Android开发中熟识的方法或类
Android开发中熟识的方法或类Android开发中,让你觉得相见恨晚的方法、类或接口:getParent().requestDisallowInterceptTouchEvent(true);剥夺父view 对touch 事件的处理权,谁用谁知道。ArgbEvaluator.evaluate(float fraction, Object
2017-02-17 20:30:51
428
原创 AIDL
AIDLAIDL的定义①aidl是Android interface definition Language 的英文缩写,意思Android 接口定义语言。②使用aidl可以帮助我们发布以及调用远程服务,实现跨进程通信。③将服务的aidl放到对应的src目录,工程的gen目录会生成相应的接口类我们通过bindService(Intent,ServiceConne
2017-02-17 17:50:16
4945
原创 Material Design中全新的动画
Material Design中全新的动画在Material Design设计中,为用户与app交互反馈他们的动作行为和提供了视觉上的连贯性。Material主题为控件和Activity的过渡提供了一些默认的动画,在android L上,允许自定义这些动画:Touch feedback 触摸反馈Circular Reveal 圆形展示Curved motion
2017-02-17 13:55:38
481
原创 网络编程基础知识
网络编程基础知识1、网络通信机制 网络从下往上分为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层IP协议对应于网络层,TCP协议对应于传输层,http协议对应于应用层,三者从本质上来说没有什么可比性。而Socket则是对TCP/IP协议的封装和应用,也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据
2017-02-17 13:26:19
817
原创 线程池
线程池1、产生的原因:说起线程池的产生我们必须首先了解线程的运行机制。那么什么是线程的运行机制呢?简单来说线程是怎么进行工作的?其实在我们计算机系统中,操作系统为每一个运行的线程安排一定的cup时间去处理这个线程,而这个cup时间的专业术语叫做时间片,所以cup其实在不断的切换时间片来循环的执行线程任务,由于cup的执行效率非常快,所以感觉就像多个线程在同时执行一样。但是对于单核的cu
2017-02-17 13:25:32
263
原创 ActionBar
ActionBar1、ActionBar是谷歌在安卓3.0时候推出的一种标题栏控件,其主要目的是为了消除安卓中的菜单按键,统一安卓的显示界面。ActionBar主要包含四部分:app图标,试图控件,操作按钮,更多操作 注意:1、使用ActionBar必须使用带ActionBar的主题 2、考虑到向下兼容的问题,Activity必须继承
2017-02-17 13:24:37
585
原创 Android 5.0新特性
Android 5.0新特性一、用户体验方面:首先,在感官界面设计上,我们彻底迎来了Android系统的扁平化时代,新的系统不仅使用了新的配色,此外,谷歌全面改善了原来乏味的通知中心,让原生系统也拥有了像第三方插件那样强大的功能。另外,多任务系统也加入了更多的卡片式风格,同时还有大量的其它新特性,包括64位编译器(ART模式)和增强电池续航能力。1、Material Desig
2017-02-16 16:58:25
2464
原创 Android实际开发常用框架总结
Android实际开发常用框架总结 一、进行网络请求的常用框架及其用法 1、OKHTTP的实际开发中的用法 2、Volley的实际开发中的用法 二、实际开发中进行图片下载以及缓存的框架 1、神奇的Picasso 框架 2、Android Universal Image Loader 3、Glide最火图片加载开源框架加载Gif资源图到Android ImageView中 4、Fr
2017-02-16 16:10:14
708
原创 Android开发常用网站
Android开发常用网站东西我给你们了,你们要好好看,收获的是自己,不看不学我也没办法咯!!! 1、github(下载开源框架,全球最大) https://github.com/ 2、安卓巴士 (点击“开源代码”,n多demo源码,就不说了,你进去就知道了) http://www.apkbus.com/
2017-02-16 08:55:43
293
原创 Android 6.0新特性
Android 6.0新特性用户体验:5月29日零点,谷歌正式在旧金山举办了广大安卓机友们都很期待的I/O开发者大会,这是谷歌每年都会举办的一次盛会,而对安卓机友们来说就是一次期盼。此次在会上,谷歌为大家带来了众望所归的安卓6.0(Android M)操作系统。新特性一:App Permissions(软件权限管理) 在安卓6.0里,应用许可提示可以自定义了。它允许对
2017-02-16 08:45:45
569
原创 开发中路径和乱码问题
路径乱码问题开发中路径的问题 1、相对路径(1)在html文件中引入图片第一种:图片和html在同一个目录下面* 直接写图片的名称 第二种:图片在html的上层目录* 写 ../ 表示上层目录 第三种:图片在html的下层目录* 直接写目录名称和图片名称 2、绝对路径(一般开发中都使用)(1)第一种写法
2017-02-16 08:43:08
548
原创 Android中Task任务栈的分配
Android中Task任务栈的分配首先我们来看下Task的定义,Google是这样定义Task的:a task is what the user experiences as an "application." It's a group of related activities, arranged in a stack. A task is a stack of activitie
2017-02-16 08:40:38
429
原创 Android中dispatchDraw分析
Android中dispatchDraw分析View中:public void draw(Canvas canvas) {/*1. Draw the background 绘制背景2. If necessary, save the canvas' layers to prepare for fading 如有必要,颜色渐
2017-02-16 08:35:19
5715
原创 Android中更新UI的方法
Android中更新UI的方法1、利用Looper更新UI界面(使用Handler消息传递机制) 如果我们的代码需要随时将处理后的数据交给UI更新,那么我们想到的方法就是另开一个线程更新数据(也必须这么做,如果我们的数据更新运算量较大,就会阻塞UI线程),也就是界面更新和数据更新是在不同线程中(android采用的是UI单线程模型,所以我们也只能在主线程中对UI进行操作)
2017-02-16 08:32:36
1257
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人