- 博客(53)
- 资源 (1)
- 问答 (1)
- 收藏
- 关注
原创 Google FireBase的简单介绍
Google FireBase的简单介绍和使用一、FireBase是啥东东,可以吃嘛?FireBase官网(需要科学上网)用官网简介的话来说就是:构建更出色应用和成功地扩大业务所需的工具和基础架构。再次用官网的话描述:Firebase 是一个移动平台,可以帮助您快速开发高品质应用,扩大用户群,并赚取更多收益。Firebase 由多种互补功能组成,您可以自行组合和匹配这些功能以满足自己的需求。
2016-11-05 13:04:10 11719
原创 ViewPager详解(四)填充Fragment和懒加载
ViewPager详解(三)Fragment的填充和懒加载实现个人主页 Demo下载地址效果图一、ViewPager基础学习请上传送门ViewPager详解(一)简单介绍和使用 ViewPager详解(二)广告轮播图 ViewPager详解(三)引导页二、使用Fragment来填充ViewPager 实际开发当中,TabLayout+ViewPager+Fragmenet是使用非常多的控件
2016-10-10 18:28:42 1498
原创 ViewPager详解(三)引导页
ViewPager详解(三)引导页个人主页 Demo下载地址效果图部分素材来自互联网,侵权什么的请及时告知,谢谢。一、引导页简介引导页一般是在用户第一次进入app时给用户的友好提示,包括介绍app的基本功能,最近更新的功能等等。目前市场上的app的引导页大部分都是采用ViewPager滑动的方式实现,每一个页面采用图片或者素材加图片的方式填充。一、Splash界面的实现Splash界面
2016-10-10 11:57:27 954
原创 ViewPager详解(二)广告轮播图
ViewPager详解(二)广告轮播图效果图一、ViewPager填充图片1.1 布局中申明由于是显示广告条,所以高度要固定住<android.support.v4.view.ViewPager android:id="@+id/viewpager" android:layout_width="match_parent" android:layout_height="120
2016-10-04 14:45:34 578 1
原创 ViewPager详解(一)简单介绍
ViewPager详解(一)简单介绍一、什么是ViewPager?1.1 谷歌官方解释1.2 大致意思布局管理器允许左右翻转带数据的页面,你想要显示的视图可以通过实现PagerAdapter来显示。这个类其实是在早期设计和开发的,它的API在后面的更新之中可能会被改变,当它们在新版本之中编译的时候可能还会改变源码。ViewPager经常用来连接Fragment,它很方便管理每个页面的生命周期,使
2016-10-04 14:42:27 980 1
原创 Android中图片的三级缓存详解
Android中图片的三级缓存浅析我的主页Demo下载地址 图片的三级缓存机制一般是指应用加载图片的时候,分别去访问内容,文件,网络获取图片的一种行为。一、三级缓存流程图二、代码框架搭建这里我仿造Picasso的加载图片代码,也做出了with,load,into等方法。2.1 with(context)这个方法传入上下文,返回ImageManager对象。/** * 初始化对象 *
2016-09-29 21:49:51 827 2
原创 SwipeRefreshLayout详解和自定义加载更多
SwipeRefreshLayout详解和自定义加载更多个人主页 演示Demo下载 本文重点介绍了SwipeRefreshLayout的使用和自定View继承SwipeRefreshLayout添加上拉加载更多的功能。介绍之前,先来看一下SwipeRefreshLayout实现的下拉刷新效果图。从图中可以看到,下拉到了一定的高度才会进行刷新,高度不够就会回收上去,正在刷新过程中,继续下拉没反应
2016-09-28 22:36:11 3066
原创 Android Studio版本控制之Git篇(服务器gitblit)
Android Studio版本控制之Git篇(服务器gitblit)个人主页下载和安装客户端 Git客户端(Git)下载地址 客户端建议下载2.71版本的,新版本在Android Studio中使用会出现一些问题,目前还没有很好的解决办法 Git安装教程服务器 Git服务器(Gitblit)下载地址 Gitblit安装教程版本说明Android Studio:2.1.3Git:
2016-09-20 00:00:41 2597
原创 Android Studio版本控制之SVN图文教程篇
Android Studio版本控制之SVN图文教程篇个人主页下载和安装客户端 SVN客户端(TortoiseSVN)下载地址 TortoiseSVN安装教程服务器 SVN服务器(VisualSVN Server)下载地址 VisualSVN Server安装教程版本说明Android Studio:2.1.3TortoiseSVN:1.9.4VisualSVN Server:3
2016-09-19 23:59:03 1474
原创 Android中的AsyncTask和接口回调使用详解
Android中的AsyncTask和接口回调使用详解我的主页 Demo下载地址一、AsyncTask简单介绍官方文档中队AsyncTask的解释是:AsyncTask更加适用于UI线程。这个类允许执行后台操作并在UI界面上发布结果,而不必处理多线程。AsyncTask是围绕Thread和Handler设计的一个辅助类,它不构成一个通用的线程框架。Asynctasks应该用于短作业(最多几秒钟)
2016-09-14 23:07:28 6834
原创 Android中.9图片的含义及制作教程
Android中.9图片的含义及制作教程个人主页 演示Demo下载一、9patch图片的概念9patch图片是andriod app开发里一种特殊的图片形式,文件的扩展名为:.9.png9patch图片的作用就是在图片拉伸的时候保证其不会失真。所以我们使用.9图片,让图片在指定的位置拉伸和在指定的位置显示内容,这样图片的边边角角就不会出现失真了。二、使用.9图片和不使用的差异9patch和
2016-09-10 19:01:02 1081
原创 Android中的Toast源码分析和自定义Toast
我的主页Demo下载地址一、系统自带Toast的源码分析1. Toast的调用显示学过Android的人都知道,弹出一个系统API吐司只需要一行代码,调用的是Toast对象的makeText()方法,方法里给一个上下文,显示的文字,和显示的时长,然后再调用show方法就能显示。Toast.makeText(this,"下载失败",Toast.LENGTH_SHORT).show();2. To
2016-09-07 23:25:14 1478
原创 Android沉浸式状态栏工具类,一句代码轻松搞定
Android沉浸式状态栏工具类,一句代码轻松搞定博客原文及源码地址:http://jaeger.itscoder.com/android/2016/03/27/statusbar-util.html 最近开发用到了沉浸式状态栏的东西,于是在网上找资源学习,正好看到一个特别牛逼的大神写的沉浸式状态栏代码,于是借鉴小改了几个地方,使用起来更加的方便。
2016-08-31 00:37:31 1898
原创 糗事百科简易版(网页提交数据通过服务器处理显示到手机上)
糗事百科简易版(网页提交段子通过服务器显示到手机)案例效果图目标从浏览器端提交数据,通过服务器处理,给出url,手机端通过url获取数据,进行显示。原理1. 从浏览器端输入端子标题和段子内容,点击提交,数据会提交到SubmitInfoServlet进行处理2. SubmitInfoServlet接收提交的数据,将数据封装成javabean,然后存入集合,再使用XStream对象将集合转换成xml格式
2016-07-31 23:14:41 2149
原创 JavaWeb基础知识:Tomcat服务器和http协议
Day05Tomcat服务器和Http协议1. tomcat服务器配置 虚拟主机1.1 进入tomcat服务器目录,找到了conf/server.xml文件,修改第70行端口号,将8080改为801.2 还是这个文件,在Engine标签里有个Host标签,将这个标签的整个内容复制一下,粘贴在下面,修改一些值,具体如下: name=”www.itheima.com” 设置你想要访问的url地址
2016-07-27 21:18:48 1416
原创 JavaWeb基础知识:Html,Css和Javascript项目实战
Day04 Html,Css和Javascript项目实战项目1:使用Html5的Canvas对象绘制一个圆形钟盘,显示实时时间效果图如下代码如下<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> </head> <body> <canv
2016-07-27 00:30:52 10316 1
原创 JavaWeb基础知识:JavaScript快速入门
Day03 JavaScript快速入门1. js生成文本<!-- js一般是写在head标签里面--><script> document.write("我是天才!!"); document.write("我是废才!!");</script>2. js生成标签<script> document.write("我是天才<br/>"); document.w
2016-07-25 23:54:43 2111 7
原创 JavaWeb基础知识:Html和Css实战WebView实现手机显示网页
Day02 Html、Css实战和WebView实现手机显示网页1.html与css实战1.1 程序猿小网页先来看一下效果图 编程用图如下 实现代码如下<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title></title> <style> #pic{
2016-07-24 00:03:13 2745
原创 JavaWeb基础知识:Html与Css基础入门
Day01 html与css基础入门1.html的常见标签和实战1.1 a标签<a href="https://www.baidu.com" target="_blank">点我送福利哦!</a>// target属性值_blank表示另取空白页打开网页,用new有同样的效果1.2 img标签<img src="plmm.jpg" width="100px" height="200px" alt
2016-07-23 01:10:24 3145
原创 Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled
错误由来:更新完Android Studio 最新版本之后,运行程序就出现了错误提示:Error running app: Instant Run requires ‘Tools | Android | Enable ADB integration’ to be enabled。这个错误的意思是:程序运行错误,运行需要Tools | Android | Enable ADB integration这
2016-06-30 15:13:25 497
原创 Java趣题库:质数判断
问题判断一个自然数是不是质数。解析只能被1和自己整除的数称为质数。最小的质数是2。我们需要遍历判断自然数是否能被整除,来判断该数是不是质数。代码如下int n = 47;// 设置一个开关,如果不是质数就修改其值,默认是质数boolean flag = true;for (int i = 2; i < n; i++) { if (n % i == 0) { f
2016-06-30 08:06:52 485
原创 Java趣题库:最大公约数
问题求两个自然数的最大公约数。解析最大公约数是指两个数中公共约数最大的那个。我们可以从1依次遍历到两个数中最小的那个,然后把两个数的公共约数存储起来,最后的那一个约数就是最大公约数了。代码如下int m = 6, n = 9;int result = 1;for (int i = 1; i <= m; i++) { // 找出所有公约数,并赋值给result if ((
2016-06-28 13:57:38 548
原创 Java基础知识:异常
Day13 异常1.异常图解2.Throwable类2.1 常用方法String getMessage():异常的消息字符串String toString():返回异常的简单信息描述void printstackTrace():调用toString()方法并返回2.2 异常处理try{} catch() {} finally{}throws 异常类名(跟在方法括号后)throw:出现了
2016-06-27 13:50:03 432
原创 Java基础知识:java.util.Map集合
Day12 java.util.Map集合1. Map集合将键映射到值的对象集合称为Map集合。一个映射不能包含重复的键,每个键最多只能映射到一个值2. 常用功能添加功能 Object put(K key, V value):添加元素。如果键第一次存储,直接存储返回null,如果不是第一次存储,替换以前的值,返回旧值删除功能 void clear():移除所有键值对元素V remove
2016-06-15 12:11:40 550
原创 Java基础知识:java.util.Collection集合
Day11 java.util.Collection集合一、集合体系二、Collection主要是按照索引值来操作数据2.1 功能概述添加功能 boolean add (Object obj):添加一个元素到集合的末尾boolean addAll(Collection c) :添加一个元素集合删除功能 void clear():移除所有元素判断功能 boolean contains
2016-06-13 10:47:57 1799
原创 Java基础知识:正则表达式
Day10 正则表达式1. 规则字符X 字符x\ 反斜线字符\n 换行符\t 回车符字符类[abc] a、b或c[^abc] 除abc之外的任何字符[a-z A-Z] 所有的字母字符[0-9] 0-9的字符预定义字符类. 任何字符\d 数字:[0 -9]\w 单词字符[a-z A-Z 0-9]边界匹配器^ 行的开头$ 行的结尾\b 单词
2016-06-11 15:05:24 449
原创 Java基础知识:java.util包-Date、Calendar、Random类等
Day09 java.util-Date、Calendar、Random类等一、Date1.1 使用Date类表示时间使用Date类表示当前系统时间Date d = new Date();System.out.println(d);使用Date类表示指定的时间Date d = new Date();int year = d.getYear() + 1980; // 年份int month =
2016-06-01 20:23:09 603
原创 Java基础知识:java.lang包-Object、String、StringBuffer和包装类等
Day08 java.lang包-Object、String、StringBuffer和包装类等一、 Object1.常用方法boolean equals():判断两个对象的内容是否相同protected void finalize():释放一个对象的占用的内存空间时,该方法会被JVM调用。如果释放对象时需要执行一些操作,可以在这个方法里写执行代码int hashCode():返回该对象的哈希
2016-05-31 22:29:56 1543
原创 Java基础知识:面向对象-抽象、接口、内部类
Day07 面向对象-抽象、接口、内部类一、 抽象1.1 使用规则抽象方法只存在于抽象类中,并被abstract修饰,抽象类不能用new来创建,要使用抽象方法必须用子类复写所有的抽象方法,建立子类调用。如果子类只复写了部分方法,则子类也是一个抽象类抽象类内部可以有0个或多个抽象方法,抽象方法没有方法体,抽象方法所在的类一定为抽象类,并且强制子类覆盖父类的抽象方法1.2 模板方法设计模式在定义
2016-05-30 22:20:26 476
原创 Java基础知识:面向对象-封装、继承、多态
Day06 面向对象—封装、继承、多态一、封装1.1 原则把不需要对外提供访问的内容都隐藏起来,仅对外提供公共访问方法1.2 this关键字作用代表自身类的对象在自身构造方法内部引用其他构造方法引用成员变量引用成员函数构造函数间的调用this.xx 调用的是成员的属性和成员方法this(xx) 调用的是本类中的对应参数的构造函数this语句:用于构造函数间相互调用。只能定义在构造函
2016-05-28 20:22:00 556
原创 Java基础知识:面向对象-基本概念
Day05 面向对象—基本概念1. 面向对象三个特征:封装、继承、多态类与对象类:对现实生活中事物的描述对象:就是这类事物实实在在存在的个体类是对象的抽象,对象是类的实例映射到Java中,描述的就是class定义的类,具体对象就是对应java在堆内存中用new建立的实体属性对应类中的变量,行为对应类中的方法Car c = new Car(); // c是一个类类型变量,它指向对象2.
2016-05-27 16:34:20 538
原创 Android基础知识:android新特性
Day11 新特性一、Fragment1. 基本概念和用法用途:在一个Activity里切换界面,切换界面时只切换Fragment里面的内容生命周期方法跟Activity一致,可以把其理解为就是一个Activityfragment切换时会销毁旧的fragment,再创建新的定义布局文件作为Fragment的显示内容// 此方法返回的View就会被显示在Fragment上@Override
2016-05-27 09:19:52 350
原创 Java基础知识: 数组和函数
Day04 数组和函数一、数组1. 数组基本概念一维数组元素类型[] 数组名 = new 元素类型[元素个数或数组长度];元素类型[] 变量名 = {元素1,元素2...};元素类型[] 变量名 = new 元素类型[]{元素1,元素2...};二维数组元素类型[][] 数组名 = new 元素类型[第一维长度][第二维长度];数组常见异常数组脚标越界异常(ArrayIndexOutofBou
2016-05-24 20:11:46 558
原创 Java基础知识:流程控制
Day03 流程控制1.语句if格式if(条件){ 要执行的语句;} else{ 要执行的语句;}if else 简写格式变量 = (条件表达式)?表达式1 : 表达式2;2.语句switch格式switch(变量){ case 值:要执行的语句; break; … default:要执行的语句;}break和continue
2016-05-23 22:08:33 406
原创 Android基础知识:内容提供者
Day10 内容提供者一、内容提供者1. 创建内容提供者系统应用的数据库是不允许其他应用访问的内容提供者的作用就是让别的应用访问到你的私有数据自定义内容提供者,继承ContentProvider类,重写增删改查方法,在方法中写增删改查数据库的代码,例如:添加的方法@Overridepublic Uri insert(Uri uri, ContentValues values) { d
2016-05-23 22:07:18 710
原创 Android基础知识:多媒体编程
Day09 多媒体编程一、对话框1. 确定取消对话框创建对话框构建器对象,类似工厂模式AlertDialog.Builder builder = new Builder(this);设置标题和正文builder.setTitle("警告");builder.setMessage("若练此功,必先自宫");设置确定和取消按钮builder.setPositiveButton("现在自宫", new
2016-05-19 22:07:49 4254
原创 Android基础知识: 服务
Day08 服务一、服务:service1. 基本概念服务就是默默运行在后台的组件,可以理解为是没有前台的activity,适合用来运行不需要前台界面的代码服务可以被手动关闭,不会重启,但是如果被自动关闭,内存充足就会重启startService启动服务的生命周期 onCreateonStartCommandonDestroy重复的调用startService会导致onStartCom
2016-05-17 22:11:27 522
原创 Android基础知识:广播
Day07 广播一、广播1. 基本概念广播系统在产生某个事件时发送广播,应用程序使用广播接收者接收这个广播,就知道系统产生了什么事件。Android系统在运行的过程中,会产生很多事件,比如开机、电量改变、收发短信、拨打电话、屏幕解锁等广播接收者当一条广播被发送出来时,系统会在所有清单文件中遍历,通过匹配意图过滤器找到能接收这条广播的广播接收者2. 广播的两种类型有序广播:所有跟广播的inte
2016-05-10 22:13:30 819
原创 Android基础知识:Activity生命周期和Intent用法
Day06 Activity生命周期和Intent用法一、Activity的跳转1. 创建第二个Activity需要在清单文件中为其配置一个activity标签标签中如果带有这个子节点,则会在系统中多创建一个快捷图标 <intent-filter> <action android:name="android.intent.action.MAIN" /> <category a
2016-05-08 22:07:20 1221
原创 Android基础知识:多线程下载和xUtils的使用
Day05 多线程下载和xUtils的使用一、多线程下载1. 请求数据进行下载 原理:服务器CPU分配给每条线程的时间片相同,服务器带宽平均分配给每条线程,所以客户端开启的线程越多,就能抢占到更多的服务器资源获取下载链接,创建底层存储设备临时文件存储下载数据String path = "http://192.168.1.102:8080/editplus.exe"; URL url =
2016-05-05 22:41:22 637
如下GridView Item之间的间隔线是怎么设置的?
2016-08-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人