自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 HashMap原理详解

HashMap原理详解1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。      数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很大,达O(N)。链表的特

2017-12-29 11:02:24 431

原创 HashMap,LinkedMap,TreeMap的区别

HashMap,LinkedMap,TreeMap的区别HashMap,LinkedHashMap,TreeMap都属于MapMap 主要用于存储键(key)值(value)对,根据键得到值,因此键不允许键重复,但允许值重复。  HashMap 是一个最常用的Map,它根据键的HashCode 值存储数据,根据键可以直接获取它的值,具有很快的访问速度。HashMap最多只允许一

2017-12-29 10:59:02 808

原创 java面试题

1. Java中的原始数据类型都有哪些,它们的大小及对应的封装类是什么?(1)boolean   boolean数据类型非true即false。这个数据类型表示1 bit的信息,但是它的大小并没有精确定义。   《Java虚拟机规范》中如是说:“虽然定义了boolean这种数据类型,但是只对它提供了非常有限的支持。在Java虚拟机中没有任何供boolean值专用的字节码指令,J

2017-12-29 09:43:03 440 1

原创 Java三大特性

java的三大特性Java语言的三大特性即是:封装、继承、多态封装(1)封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。继承(1)继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。(2)

2017-12-29 09:33:16 492

原创 进程和线程关系及区别

进程和线程关系及区别1.定义进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位.线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.

2017-12-29 09:28:56 263

原创 Android 冷启动 热启动 测试

Android 冷启动 热启动 测试热启动呢:就是你已经打开过APP但是实际上面你使用home键等。就是还存在后台的应用。再次打开的时候算是属于热启动了。冷启动呢:属于你第一次打开APP,系统在给你开一个进程。      这个时候我在说明一下热启动的作用。我这边公司想知道他APP开了几次。而且需要准确的数据。这个时候,使用热启动。其实热启动很多地方都可以使用到。一、应用的启动

2017-12-29 09:04:11 3900

原创 Android集成微信支付功能

Android集成微信支付功能一、开发准备 1. 微信支付-官方文档 2. 微信支付-官方Demo&SDK 3. 本教程对应的源代码 二、微信接入 想要接入微信移动支付功能,需要在微信开放平台及微信商户平台注册帐号,并且申请应用,应用申请结束之后需要申请微信支付接口,这个可以在对应平台中查看操作流程,

2017-12-28 21:25:36 400

原创 Android集成支付宝支付功能

Android集成支付宝支付功能一、开发准备1. 支付宝官方文档-移动支付2. 移动支付的SDK&DEMO下载3. 移动支付-接入指南 - 此文档非常重要,后面详细说明。4. 本教程对应的源代码二、支付宝接入想要接入支付宝移动支付功能,必须在支付宝商家服务平台进行申请与审核。移动支付功能需要企业或者个体工商户进行申请,审核通过之后方可使用。如何与支付宝签约并审核请参考官方文档

2017-12-28 21:15:57 561

原创 Android-线程通讯设计模式-Handler消息模型

Android-线程通讯设计模式-Handler消息模型问题思考:1) Android中的工作线程获取数据以后如何传递给主线程? 例如: 例如工作线程通过网络下载一张图片,通过主线程将图片更新到页面上。 所有的耗时操作在工作线程,工作线程不能操作UI 2) Android 中主线程的数据如何传递给工作线程? 例如: 主线程将要下载的文件的名字传递给工作线程。 

2017-12-27 16:35:08 541

原创 Android WebView 详解

Android WebView 详解1.   相关API    1.1. 相关类介绍       1.2. WebView        1.3. WebSettings    1.4. WebViewClient           1.5. WebChromeClient    2.  回调顺序    3.  视口(viewport)    4.管理

2017-12-27 16:00:21 487

原创 开发移动应用程序的三种选择:原生、HTML5或混合

开发移动应用程序的三种选择:原生、HTML5或混合•原生应用程序:原生应用程序是某一个移动平台(比如iOS或安卓)所特有的,使用相应平台支持的开发工具和语言(比如iOS平台支持Xcode和Objective-C,安卓平台支持Eclipse和Java)。原生应用程序看起来(外观)和运行起来(性能)是最佳的。•HTML5应用程序:HTML5应用程序使用标准的Web技术,通常是HTML5、J

2017-12-27 15:47:04 16728

原创 自定义弹出Dialog框

自定义弹出Dialog框效果图:main.xml文件:Button android:id="@+id/btn_4" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="自定义dialog" />自定义dialog.

2017-12-26 21:12:31 496

原创 Android APK反编译 详解

Android APK反编译就这么简单 详解在学习Android开发的过程你,你往往会去借鉴别人的应用是怎么开发的,那些漂亮的动画和精致的布局可能会让你爱不释手,作为一个开发者,你可能会很想知道这些效果界面是怎么去实现的,这时,你便可以对改应用的APK进行反编译查看。下面是我参考了一些文章后简单的教程详解。测试环境:        win 7 使用工具: 

2017-12-23 11:46:01 218

原创 Android异步和同步的区别

Android异步和同步的区别答案一:1、同步执行的话,就是程序会呆板地从头执行到尾,耗时间的东西不执行完,程序不会继续往下走,等待时间长的话,有时候就会造成失去响应了。2、异步的好处,就是把一些东西,特别是耗时间的东西扔到后台去运行了(doInBackground),程序可以继续做自己的事情,防止程序卡在那里失去响应。答案二:1、同步是指两个线程的运行是相关的,其中一个线

2017-12-23 11:40:39 685

原创 Android多线程的四种方式

Android多线程的四种方式当我们启动一个App的时候,Android系统会启动一个Linux Process,该Process包含一个Thread,称为UI Thread或Main Thread。通常一个应用的所有组件都运行在这一个Process中,当然,你可以通过修改四大组件在Manifest.xml中的代码块()中的android:process属性指定其运行在不同的process

2017-12-23 10:52:08 820

原创 Heap和Stack的区别

Heap和Stack的区别1 内存分配策略按照编译原理的观点,程序运行时的内存分配有三种策略,分别是静态的,栈式的,和堆式的.静态存储分配是指在编译时就能确定每个数据目标在运行时刻的存储空间需求,因而在编译时就可以给他们分配固定的内存空间.这种分配策略要求程序代码中不允许有可变数据结构 (比如可变数组)的存在,也不允许有嵌套或者递归的结构出现,因为它们都会导致编译程序无法计算准

2017-12-22 14:30:47 5347

原创 abstract class和interface的区别

abstract class和interface的区别在Java语言中,abstract class和interface是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class

2017-12-22 14:13:49 212

原创 Activity的四种启动模式

Activity的四种启动模式Activity启动方式有四种,分别是:standard     singleTop    singleTask     singleInstance  activity android:name=".MainActivity" android:launchMode="standard" />1.standard默认模式,可以不用写配置。在

2017-12-22 14:03:07 172

原创 一列数字的规则如下;1,1,2,3,5,8,13,21,34........ 求第30位数字是多少,用递规和非递归两种方法算法实现

一列数字的规则如下;1,1,2,3,5,8,13,21,34........ 求第30位数字是多少,用递规和非递归两种方法算法实现斐波纳契数列(Fibonacci Sequence),又称黄金分割数列。在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有

2017-12-22 13:59:34 1582

原创 RecyclerView多布局的简单实现

RecyclerView多布局的简单实现1.添加依赖:compile 'com.android.support:recyclerview-v7:24.2.1'2、在mainactivity的xml布局里直接写上recyclerviewLinearLayoutxmlns:android="http://schemas.android.com/apk/res/

2017-12-21 15:42:07 271

原创 GreenDao3.0简单使用

GreenDao3.0简单使用关于GreenDao greenDao是一个将对象映射到SQLite数据库中的轻量且快速的ORM解决方案。关于greenDAO的概念可以看官网greenDAO greenDAO 优势 1、一个精简的库2、性能最大化3、内存开销最小化4、易于使用的 APIs5、对 Android进行高度优化

2017-12-20 19:55:23 336

原创 Android 自定义textview实现跑马灯效果

Android 自定义textview实现跑马灯效果直接上代码:public class CustomTextView extends View { /** * 界面刷新时间(ms) */ public static final int INVALIDATE_TIME = 15; /** * 每次移动的像素点(px) *

2017-12-19 20:26:16 1649

原创 Android——自定义View实现9宫格解锁

Android——自定义View实现9宫格解锁自定义View1.实现一个子类继承View2.覆盖onDrow()函数,渲染图像3.覆盖onTouchEvent()函数4.监听按下、移动,松开手指的动作5.重新在onDrow()中渲染对应的的图像这是一个仿京东金融的一个九宫格解锁,最上面的日期显示使用的Time()获取到当前的时间,我们得到日期对其赋值就好了。

2017-12-19 16:52:25 795 1

原创 Android实现RecyclerView自定义列表、点击事件以及下拉刷新

Android实现RecyclerView自定义列表、点击事件以及下拉刷新1. 什么是RecyclerViewRecyclerView 是 Android-support-v7-21 版本中新增的一个 Widgets,官方对于它的介绍则是:RecyclerView 是 ListView 的升级版本,更加先进和灵活。简单来说就是:RecyclerView是一种新的视图组,目标是为任何基于

2017-12-19 11:10:47 384

原创 Android button设置背景色与边框颜色

Android button设置背景色与边框颜色1.在drawable文件夹下面创建setbar_bg.xmlxml version="1.0" encoding="utf-8"?>shape xmlns:android="http://schemas.android.com/apk/res/android" > solid android:color=

2017-12-14 15:01:11 27935 2

原创 Android TabLayout下方下划线的宽度

Android  TabLayout下方下划线的宽度      今天做项目遇到了这样一个问题,tablayout需要设置下划线的宽度,在网上找了半天也没找到,后来了解在源码中对tabLayout的下划线进行了设置.并没有方法可以直接设置下面我们看一下代码: public void setIndicator(TabLayout tabs, int leftDip, int right

2017-12-14 11:10:07 1582

原创 android studio点击运行按钮出现:Unable to locate adb 错误

android studio点击运行按钮出现:Unable to locate adb 错误问题:android studio点击运行按钮出现:Unable to locate adb分析:sdk Manager下不存在platform-tools,在SDK安装目录的\platform-tools下放入adb.exe解决:点击“sdk mamager”,在“sdk tool

2017-12-13 16:53:17 8167

原创 okhttp post请求

1.简介OKHttp是一款高效的HTTP客户端,支持连接同一地址的链接共享同一个socket,通过连接池来减小响应延迟,还有透明的GZIP压缩,请求缓存等优势,其核心主要有路由、连接协议、拦截器、代理、安全性认证、连接池以及网络适配,拦截器主要是++指添加,移除或者转换请求或者回应头部信息++这个库也是square开源的一个网络请求库(okhttp内部依赖okio)。现在已被Google

2017-12-11 16:14:20 16607

原创 贝塞尔曲线

贝塞尔曲线什么是贝塞尔曲线贝塞尔曲线(Bézier curve),又称贝兹曲线或贝济埃曲线,是应用于二维图形应用程序的数学曲线。一般的矢量图形软件通过它来精确画出曲线,贝兹曲线由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋,我们在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。主要结构:起始点、终止点(也称锚点)、控制点。通过调整控制点,贝塞尔曲线的形状会发生变化。

2017-12-09 09:44:01 4300

原创 android studio 的Debug调试

android studio 的Debug调试1. 什么是bug?    程序错误或漏洞2. 什么是debug?    指程序员对编好的程序进行漏洞的排查,尽量消除错误或漏洞, 一般都是用专业的工具进行   作用:1. 找出程序运行出的异常2. 找出程序运行结果不正确的原因3. 理清一个复杂的程序流程,帮助阅读代码 断点:1. 断点需打在可能有问

2017-12-08 13:42:29 715

原创 MOB第三方分享

MOB第三方分享1.首先进入官网登陆下载sdk点击集成在把下面这个文件复制进assets中(如果没有assets,就在main下面创建一个把下面的复制进去)src下面的cn在java包下2.最后配置AndroidManifestuses-permission android:name="

2017-12-08 10:49:51 299

原创 EditText过滤器

EditText过滤器EditText文本输入控件,在App开发中可能会遇到各种各样的要求,如只能输入数字、限定长度、不允许输入特殊字符等要求,这时候我们就要实现EditText的过滤功能,达到产品的要求。(一)简单的过滤EditText已经提供了一些过滤输入的属性1、通过inputType限定android:inputType="textCapChara

2017-12-06 16:51:41 504

原创 Android软件盘(EditText)的搜索功能

Android软件盘(EditText)的搜索功能1.简介在之前做项目的时候,需要编辑框有搜索功能,可是我百度了很多,试了都没什么效果,一直都出不来那个搜索,今天简单的学习了一下,分享给大家。2.示例代码xml布局:LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

2017-12-06 11:52:22 520

原创 android高德地图定位

android高德地图定位今天刚学的高德地图定位,本篇博客在上一篇高德地图基础上加的定位,分享给大家!直接上代码://终于找到报错“10: 定位服务启动失败”的问题 //这个MapActivity放置的位置有关系,当Activity放在TabSpec中就有问题 //如果单独作为一个activity则没有问题 代码:public class Sec

2017-12-05 15:44:03 942

原创 微信仿朋友圈添加图片

微信仿朋友圈添加图片问题:添加过多图片时,会出现OOM。如何动态修改图片展示栏的高度。加号如何伴随图片的增加而后移。如何保证最多添加照片为9张。添加过多图片时,会出现OOM出现第一种情况的原因很简单,就是随着我们手机的像素越来越高,图片的大小也越来越大,我们普通的机拍出来照片至少也有1~2M,更不说像素高的手机。而对于一个安卓应用来说,由于手机设备的限制,一般应用使

2017-12-05 15:04:05 8969

空空如也

空空如也

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

TA关注的人

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