自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

郑在努力~

相似的生活,相似的经历,结果却会不同 GitHub: https://github.com/zhenggy

  • 博客(159)
  • 资源 (4)
  • 收藏
  • 关注

原创 集成facebook登录获取应用内好友

1.facebook登录功能1.facebook开发者网站中创建应用信息网址在这里 1. 一步一步跟着做就行 2. 其中在“生成开发密钥散列”这里注意下,有Mac 操作系统和Windows操作系统两个选项,一般Windows操作系统的需要安装“ openssl-for-windows openssl 函数库”(旁边就有下载链接)长这样☞Google Code Archive

2018-02-05 21:13:20 4363 3

原创 Retrofit使用form-data方式的Post请求

将Post请求的数据放在form-data中,使用Retrofit框架的实现方式 前言:我们一般使用Retrofit进行Post的请求的时候都是把上传的数据放在请求体中的,但是在上传文件等操作时会使用到form-data方式上传数据。form-data表单数据1.创建网络请求接口的两种方式//适用于数据量少的情况@Multipart@POST("app/user/lo

2018-02-05 17:59:32 23405

原创 关于百度地图定位异常的问题

添加权限: <uses-permission android:name="android.permission.READ_PHONE_STATE" /> <!-- 这个权限用于进行网络定位--> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <!-- 这个权限用于访问GPS定位--

2017-04-14 13:09:41 2507

原创 Android的View动画使用总结

View动画的四种变换 名称 标签 子类 效果 平移动画 <translate> TranslateAnimation 移动View 缩放动画 <scale> ScaleAnimatioin 放大或缩小View 旋转动画 <Rotate> RotateAnimation 旋转View 透明度动画 <alpha> AlphaAn

2017-03-16 11:52:44 770

原创 让Monkey在你的应用上蹦起来

Monkey测试学习项目github地址:点这里,求星星在AndroidStudio上连接测试机,在命令行执行相关命令(adb.ext 在 \sdk\platform-tools)adb devices 列出连接的测试机 (出错的话请参考错误1)adb shell 在设备上运行shell命令 (出错的话请参考错误2)su 获取权限 (出错的话参考错误3)ls data/data 列

2017-03-14 18:57:51 984

原创 ButterKnife注入时出错

最好不要在父View和子View中同时用 最好只在主要的View中用 还是findViewById好。。。。。。

2017-03-01 17:52:54 490

原创 详解RecyclerView的分割线

RecyclerView分割线详解具体的原理可以参考底部留下的第一个地址用法可以参考第二个地址 1. 添加RecyclerView分割线,继承自RecyclerView.ItemDecoration可实现3个方法 onDraw()getItemOffsets()onDrawOver()方法间相互关系1. 方法执行的顺序为:getItemOffsets() 执行4次 –>

2017-02-15 13:25:16 1523

原创 年末总结

2016是我从学生到真正的码农转变的一年,总体来说,很平凡...... 我是在10月底去实习的,果然啊,工作了就没有上学时那么轻松和自由了,相对来说,工作后学到的东西挺多的,但是感觉学习的效率没那么高了。 明年毕业了,希望明年能够静下心来好好学习,不要被各种琐事所打扰。博客的话一直想写,但又感觉没有深入的学习和总结学到东西,都是简单的入门学习。明年可能会间隔时间长点,总结点质量好点的

2016-12-25 22:20:25 521

原创 Java字符串格式输出

Java字符串格式输出eg: System.out.println(String.format(“%tQ”, new Date())); 占位符 作用 示例 结果 %d 十进制整数,int范围内 123 123 %o 八进制整数 123 173 %x 十六进制整数 123 7b %e 指数形式 123333.333333333

2016-11-14 11:14:15 4545

原创 AndroidStudio 中 ctrl + 左键 进入源码看不到详细代码

在AndroidStudio 中 ctrl + 右键 进入源码看不到详细代码解决方法找到 jdk.table.xml位置 : C:\Users\当前用户名.AndroidStudio2.1\config\options\jdk.table.xml找到对应的 <name value="Android API 23 Platform" /> ``` 修改这个sourcePath结点

2016-11-03 18:13:42 3620

原创 Git实际开发中的使用

Git实际开发中的使用生成SSH秘钥设置Git的user name和email$ git config –global user.name “Your Name”$ git config –global user.email “[email protected]”生成秘钥$ ssh-keygen -t rsa -C “[email protected]”将生成的秘钥中的公钥交给Git管理

2016-11-03 11:19:58 850

转载 AndroidStudio快捷键

Android Studio快捷键查找所有快捷键查找快捷键[Find Action]:Ctrl+Shift+A显示一些有用信息显示简要信息:Ctrl+mouse over code快速查找文档[Quick Documention]:Ctrl+Q在方法调用的地方显示参数信息:Ctrl+P错误的显示说明或警示插入符号:Ctrl+F1编辑格式化代码[Refomart Code]:Ctrl+Al

2016-10-26 10:06:01 419

原创 Activity启动模式详解

Activity启动模式详解对应的试验在这 http://blog.csdn.net/Ash_Zheng/article/details/52165402Activity的启动模式实际上是定义了Activity实例与当前Task的关联方式。所以想要清楚的了解Activity的启动模式,首先得清楚Task是怎么回事。Tasks and Back StackTasks and Back Stack的关系

2016-08-09 19:15:52 1693 2

原创 Activity启动模式实验

Activity启动模式实验这一节的东西真的得多看多想多试验…2个应用A与B,都各有3个Activity 分别为A1 A2 A3, B1 B2 B3 同时重写B中Activity的OnDestroy()方法,以此判断B中Activity状态。standard 默认启动模式特点:每次这个activity都会重新实例化。1个应用 A 动作 task状态 界面显示 打开 A1 A1

2016-08-09 19:14:44 814

转载 onSaveInstanceState()和onRestoreInstanceState()方法

Android Activity的onSaveInstanceState()和onRestoreInstanceState()方法:基本作用:  Activity的 onSaveInstanceState() 和 onRestoreInstanceState()并不是生命周期方法,它们不同于 onCreate()、onPause()等生命周期方法,它们并不一定会被触发。当应用遇到意外情况(如:内存

2016-08-08 13:28:44 408

原创 Android基础知识

Android基础知识安装成功,这个Android程序就拥有了自己独立的运行沙盒(沙盒是在受限的安全环境中运行应用程序的一种做法,这种做法是要限制授予应用程序的代码访问权限。)Android操作系统是一个多用户的Linux系统,其中的每一个应用程序都是一个独立的用户。默认地,系统会为每一个应用程序分配一个唯一的Linux用户ID(这个ID只能被系统使用,并且对于应用程序来说,这个ID是未知的)。

2016-08-08 13:15:33 631

原创 Loaders

Loaders从Android 3.0开始引进了loader(加载器)技术, 在activity或者fragment中,loaders可以把异步地加载数据变得更简单。Loaders具有以下特性:他们对于每一个Activity和Fragment都是有效的。他们可以提供异步加载数据的能力。他们监视数据源,并当内容改变时传递当前最新的结果。当他们因为配置的改变而重新连接的时候,他们会自动地重连到上

2016-08-08 13:15:12 781

原创 Fragment详解

Fragment简介Fragment表现Activity中用户界面的一个行为或者是一部分。你可以在一个单独的activity上把多个fragment组合成为一个多区域的UI,并且可以在多个activity中再使用。你可以认为fragment是activity的一个模块零件,它有自己的生命周期,接收它自己的输入事件,并且可以在activity运行时添加或者删除。Fragment必须总是被嵌入到一个ac

2016-08-08 13:14:40 781

原创 Activity详解

启动一个Activity你可以启动一个其他的activity通过调用startActivity(), 并传递一个 Intent , 它用于描述acitity。 intent指定了你想要启动的activity,或者指定了你想展现的动作(系统帮你选择合适的activity,它可能来自于其他的程序)。 intent也可以携带比较小量的数据,用于启动acitivity。在你自己的应用中,你经常会简单地启动一

2016-08-08 13:13:51 1459

原创 Android Studio运行时无法与Genymotion模拟器链接

15:02:47 error: could not install smartsocket listener: cannot bind to 127.0.0.1:5037: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 (10048) 15:02:47 could not read ok from ADB Server 15:02:47 * failed to start daem

2016-06-24 15:18:37 4071

原创 Activity与Fragment通信——回调方法实现

Activity与Fragment通信——回调方法实现1. 回调方法的介绍:所谓回调,就是客户程序C调用服务程序S中的某个函数A,然后S又在某个时候反过来调用C中的某个函数B,对于C来说,这个B便叫做回调函数。例如Win32下的窗口过程函数就是一个典型的回调函数。一般说来,C不会自己调用B,C提供B的目的就是让S来调用它,而且是C不得不提供。由于S并不知道C提供的B姓甚名谁,所以S会约定B的接口规

2016-06-14 17:16:41 1012

原创 Android Studio获取SHA1的方法

Android Studio获取SHA1的方法在Android studio的Terminal中输入keytool -v -list -keystore F:\MyCode\ashzheng_keystore.jks输入密钥库口令:

2016-06-12 18:06:27 594

原创 Android从摄像头或相册中获取照片

Android从摄像头或相册中获取照片关键代码: /** * 从相册中获取,返回结果会在onActivityResult()中 */ private void selectPicFromAlbum() { Intent intent = new Intent(); intent.setAction(Intent.ACTION_GET_

2016-06-12 17:45:57 1461

原创 StringBuffer 与 StringBuilder

StringBuffer 与 StringBuilderStringBuffer线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,但不能修改。虽然在任意时间点上它都包含某种特定的字符序列,但通过某些方法调用可以改变该序列的长度和内容。 可将字符串缓冲区安全地用于多个线程。可以在必要时对这些方法进行同步,因此任意特定实例上的所有操作就好像是以串行顺序发生的,该顺序与所涉及的每个

2016-05-23 20:11:18 431

原创 Java中Vector ArrayList LinkedList之间的区别与联系

Java中Vector ArrayList LinkedList之间的区别与联系ArrayList :List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的 。)size、isEmpty、get、set、iterator

2016-05-23 18:47:33 448

原创 Eclipse常用快捷键

Eclipse常用快捷键【Ctrl+D】删除当前行【ALT+/】代码提示【Ctrl+K】、【Ctrl++Shift+K】快速向下和向上查找选定的内容【Ctrl+Shift+O】快速生成import【Ctrl+Shift+F】格式化代码【F4】显示类的继承关系【Ctrl+1】快速修复【Ctrl+Alt+↓】复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加

2016-05-23 17:50:55 375

原创 Java中Vector ArrayList LinkedList之间的区别与联系

Java中Vector ArrayList LinkedList之间的区别与联系ArrayList :List 接口的大小可变数组的实现。实现了所有可选列表操作,并允许包括 null 在内的所有元素。除了实现 List 接口外,此类还提供一些方法来操作内部用来存储列表的数组的大小。(此类大致上等同于 Vector 类,除了此类是不同步的 。)size、isEmpty、get、set、iterator

2016-05-23 17:32:54 803

原创 Java集合类的继承关系

MindManager文档下载地址:http://download.csdn.net/detail/ash_zheng/9524422Java中文API下载地址:http://download.csdn.net/detail/ash_zheng/9524424描述:黄色箭头代表implements关系,子项与父项是extends关系。

2016-05-18 21:37:21 2336

原创 作业调度问题

import java.util.Collections;import java.util.Comparator;import java.util.PriorityQueue;import java.util.Scanner;import java.util.Vector;public class JobScheduling2 { static class Job implements

2016-05-17 20:17:37 672

原创 Android网络编程基础简介

Android网络编程基础简介1. Android网络通信用到的方法HTTP:支持客户/服务器模式。简单快速:客户向服务器请求服务时,只需传送请求方法和路径。请求方法常用的有GET、HEAD、POST。每种方法规定了客户与服务器联系的类型不同。由于HTTP协议简单,使得HTTP服务器的程序规模小,因而通信速度很快。灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Typ

2016-05-16 21:25:05 572

原创 Fragment事务及Fragment实现选项卡功能

Fragment事务Fragment类引入到Honeycomb时,为协同工作,Activity类被更改为含有FragmentManager类,FragmentManager类负责管理fragment并将它们的视图添加到activity的视图层级结构中。- FragmentManager类具体管理的是: 1. fragment队列 2. fragment事务的回退栈- fragment事务

2016-05-15 20:41:59 1754

原创 Fragment生命周期详解

Fragment生命周期详解1. Fragment概述Fragment从Android v3.0版本开始引入随着界面布局的复杂化,处理起来也更加的复杂,引入Fragment可以把activity拆分成各个部分。每个Fragment都有它自己的布局和生命周期。方便了开发。采用fragment而不是activity进行应用的UI管理,可绕开Android系统activity规则的限制。fragment是

2016-05-14 12:59:35 22224

原创 Activity与Activity间的通信

Activity与Activity间的通信Activity的启动一个Activity启动另一个Activity最简单的方法就是用startActivity(Intent intent)方法,这个方法调用请求是发送给操作系统的ActivityManager负责创建Activity实例并调用其onCreat()方法。ActivityManager是通过传入startActivity(Intent int

2016-05-10 15:29:33 1340

原创 Git的使用

$ git config –global user.name “Your Name” $ git config –global user.email “[email protected]”pwd //版本仓库的位置 ls //当前目录的所有文件 ls -ah可看到隐藏文件 mkdir //创建新目录 $ git init //把这个目录

2016-05-07 21:20:15 1205

原创 Activity的生命周期

Activity的生命周期1. 从打开应用到按后退键 打开应用 onCreate() 方法执行! 不可见 onStart() 方法执行! 可见 onResume() 方法执行! 可见&在前台 按下后退键 onPause() 方法执行! 可见 onStop() 方法执行! 不可见 onDestroy() 方法

2016-05-06 21:16:26 1197

原创 Android与MVC

Android与MVC设计模式Model 模型对象 存储着应用的数据和业务逻辑。通常被设计用来映射与应用相关的一些事物,如用户,商店栗动商品等等。应用的全部模型对象组成了模型层。View 视图对象 知道如何在屏幕上绘制自己以及如何响应用户的输入。一个简单的经验法则是:凡是能在屏幕上看见的对象,就是视图对象。Controller 控制对象 包含了应用的逻辑单元,是视图与模型对象的联系纽带。控制对象被设

2016-05-06 21:15:55 389

原创 Android Studio真机调试时不打印Log信息的解决方法

我用的是三星手机 在手机设置->开发者选项->允许输出离线日志选项打勾即可

2016-05-06 20:01:42 9981

原创 git使用

$ git config --global user.name "Your Name"$ git config --global user.email "[email protected]"pwd //版本仓库的位置ls //当前目录的所有文件 ls -ah可看到隐藏文件mkdir //创建新目录$ git init       //把这个目录变成Git可以管理

2016-04-05 18:26:22 401

原创 Java 栈和队列

Stackclass Stack栈:后进先出在java中 继承关系是Stack -> Vector -> AbstractList -> AbstractCollection -> Collection -> IterableStack 可用 Deque双端队列具体实现类代替。Stack主要方法有:1. E push(); 将元素进栈,调用的是Vector中的addElement()方法2.

2016-03-24 23:01:25 417

原创 最长公共子序列 空间优化最长公共子序列

import java.util.Scanner;/** * HDU 1159 * @author ashzheng * 2016年3月17日17:48:29 */public class LongestCommonSubsequence { public static void main(String[] args) { Scanner scan = new Scanner

2016-03-17 17:52:36 1205

Java参考文档

[Java参考文档].JDK_API_1_6_zh_CN.CHM

2016-05-18

Java集合类的继承关系MindManager

Java集合类的继承关系MindManager

2016-05-18

mpandroidchartlibrary-2-1-3

下载最新版可以去 地址:https://github.com/PhilJay/MPAndroidChart

2015-09-24

Android数据库SQLite的例子

Android数据库SQLite的例子 根据扣丁课堂的教程学习 Android数据库SQLite的例子 Android数据库SQLite的例子

2015-09-18

空空如也

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

TA关注的人

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