- 博客(36)
- 资源 (5)
- 收藏
- 关注
原创 Toast源代码分析
Toast源代码分析 日常开发中经常使用到Toast开发,用户显示一个提示用户的弹出消息,简单易用。使用例程Toast.makeText(this, "Hello world", Toast.LENGTH_SHORT).show();这样一句代码即可实现通用的,系统默认样式的Toast。当然也可以自定义。关于如何自定义在分析完Toast的代码后,即可知道。代码分析makeText 创建T
2016-02-19 19:52:45
709
转载 HTTP协议详解
文章转载自: http://blog.youkuaiyun.com/gueter/article/details/1524447引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTT
2016-02-17 16:14:59
620
原创 Android保存View到本地图片
最近在看Android的系统源码,在看到View的源码的时候,无意间看到了在源码中有这么一个函数: /** * Create a snapshot of the view into a bitmap. We should probably make * some form of this public, but should think about the API.
2015-11-03 19:40:56
1517
原创 java中<<,>>和>>>
虽然在平常的开发中很少用到Java的这三个操作符,但是今天遇到了,有必要研究研究。本质上没有什么难的。自己写了几行代码,用作测试,下面直接上代码:System.out.printf("a = 0x%x \n", a); int b = a >> 4; System.out.printf("b = 0x%x \n", b); int c = a >
2015-08-24 19:28:12
5082
原创 Android 保存View到本地SD卡
最近在编写一个小项目的过程中需要将一个自定义的View绘制完成后的效果保存到本地的文件中。刚开始在网上看了很多代码,结果在我的项目中就是不行,非常纳闷。后来才发现,自己的自定义View中的onDraw()方法中由于逻辑问题,导致不是每次调用onDraw方法时都会进行绘制。所以,折腾了小半天,后来分析了一下原理,找到了问题所在,算是搞定了。现在将主要的保存代码记录下来,以后可能会用到哦。
2015-08-16 16:30:27
1236
原创 Longest Substring Without Repeating Characters
原理: 历遍字符串,查看当前字符是否出现过,当出现过的时候,子串开始位置+1,否则更新locs数组中的地址值为当前位置。public class Solution { public int lengthOfLongestSubstring(String s) { int[] locs = new int[256]; int index = 0;
2015-07-05 22:54:10
429
原创 同一台机器如何同时使用多个Git账号
说说关于一台机器如何支持多个Git帐号,我的情况是这样。通常,我开发的项目都是托管在Oschina上,因为感觉Github有时候网络不是很好,所以方便起见,就申请了一个Oschina的帐号,平时也可以去上面看看优秀的项目。但是,自己还有一个Github的帐号。这个时候在本地使用git时就非常尴尬了,很久之前配置过同时支持两个Git帐号的,最新实验室给配置了台新电脑,就得重新折腾一下,现在做个记录。
2015-07-05 15:28:24
2901
转载 dma_alloc_writecombine和dma_alloc_coherent的区别
先理解cache的作用CPU在访问内存时,首先判断所要访问的内容是否在Cache中,如果在,就称为“命中(hit)”,此时CPU直接从Cache中调用该内容;否则,就 称为“ 不命中”,CPU只好去内存中调用所需的子程序或指令了。CPU不但可以直接从Cache中读出内容,也可以直接往其中写入内容。由于Cache的存取速 率相当快,使得CPU的利用率大大提高,进而使整个系统的性能得以提升。
2015-04-29 14:38:59
886
原创 深入解析setContentView
在Android开发中,通常,为了指定某个Activity的布局,我们都会在其生命周期函数的开始处,指定Activity的UI布局,生命周期如下: 通常,可以在onCreate函数中使用setContentView指定当前Activity的UI,如果我们没有该步骤,那么Activity最终的效果上面第二个图,空空荡荡,什么都没有,只有一个Actionbar.通过setCon
2015-04-19 17:36:19
551
转载 VMware虚拟机配置Ubuntu桥接方式(Bridged)使虚拟机和宿主机能互相ping通
1、设置Bridged上网方式Vmware菜单栏VM->settings->Network Adapter或者Ctrl+D2、查看Bridged状态Vmware菜单栏Edit->Virtual Network Editor要设置成以上bridged模式,先关闭虚拟机,不关闭设置会提示只有虚拟机在power off状态才能设置,选择VMnet0,点击左下角的Restore
2015-04-10 11:27:24
539
转载 Android:Layout_weight的深刻理解
最近写Demo,突然发现了Layout_weight这个属性,发现网上有很多关于这个属性的有意思的讨论,可是找了好多资料都没有找到一个能够说的清楚的,于是自己结合网上资料研究了一下,终于迎刃而解,写出来和大家分享。首先看一下Layout_weight属性的作用:它是用来分配属于空间的一个属性,你可以设置他的权重。很多人不知道剩余空间是个什么概念,下面我先来说说剩余空间。看下面代码:
2015-04-07 13:57:30
448
原创 Android Volley支持多个cookie
最近在做一个项目,考虑到volley使用比较方便,就将其选择为网络工具。可是在使用途中发现,由于我们的项目在登录验证的时候,返回了多个cookie.也就是返回的头信息中Set-Cookie有多个值,但是volley在onResponse中只能得到一个cookie.刚开始非常郁闷,以至于我又用HttpClient编写了一个测试程序。发现,的确是volley的问题。找到问题就好办了,volley是开源
2015-02-11 11:02:50
1347
转载 [Android][Android Studio] *.jar 与 *.aar 的生成与*.aar导入项目方法
主要讲解Android Studio中生成aar文件以及本地方式使用aar文件的方法。在Android Studio中对一个自己库进行生成操作时将会同时生成*.jar与*.aar文件。分别存储位置:*.jar:库/build/intermediates/bundles/debug(release)/classes.jar*.aar:库/build/outputs/aar/libra
2015-01-11 14:52:04
639
转载 GridView--且解决与ScrollView共用的冲突问题
GridView用法基本逻辑:1)要加载到GridView的数据。2)将数据放入适配器。适配器用来将数据和GridView相匹配3)给GridView加载适配器。GridView的一个注意事项:当适配器使用ArrayAdapter时,要添加到GridView的布局界面只能有一个TextView,否则GridView界面会显示2个TextView。把GridView和适配器分开来讲吧。适配器见下
2014-12-07 22:22:03
796
转载 android几种异步处理情况笔记 Handler类:
Handler类:1 在子线程中发送Message2 在主线程中获取、处理Message在新线程中 通过Handler机制通知UI线程改变界面。每个线程只能拥有一个Looper,而每个Looper关联一个MessageQueueUI线程中,系统默认初始化了一个Looper对象。Looper、MessageQueue、Handler的作用如下:1 Looper: 每个线程
2014-12-02 19:47:11
605
转载 viewpager和viewFlipper
1、ViewFlipper1)View切换的控件—ViewFlipper介绍ViewFilpper类继承于ViewAnimator类。而ViewAnimator类继承于FrameLayout。查看ViewAnimator类的源码可以看出此类的作用主要是为其中的View切换提供动画效果。该类有如下几个和动画相关的方法。setInAnimation:设置View进入屏幕
2014-11-18 23:02:50
582
转载 java synchronized详解
记下来,很重要。Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问object的
2014-11-18 22:23:48
503
转载 S3C6410 移植Android 内核
主要过程:. 安装lunux 环境. 安装编译工具. 下载Linux kernel. 安装Android SDK. 获得root file system. 修改Linux kernel 源码. 配置Linux kernel. 修改root file system. 编译Linux kernel. 下载kernel Image1.安装linux 环境安
2014-11-18 20:29:46
592
转载 android ContentResolver详解
原文转载自;在Android 应用程序之间数据共享—-ContentResolver中,已经说明了Android是如何实现应用程序之间数据共享的,并详细解析了如何获取其他应用程序共享的数据。ContentProviders存储和检索数据,通过它可以让所有的应用程序访问到,这也是应用程序之间唯一共享数据的方法。那么如何将应用程序的数据暴露出去? 通过以前文章的学习,知道Co
2014-11-12 10:08:21
547
转载 slidingMenu的使用教程
这两天想弄一个APP的侧滑菜单,网上有很多的方法去实现,看到SlidingMenu,感觉很兴奋、很强大,但是从GitHub上下载后出现了很多的问题,今天刚好看到一篇文章详细的讲述了使用过程,如何解除使用过程出现的问题。在此转载这篇文章。原文网址GitHub上的SlidingMenu的配置方法1. 首先明确SlidingMenu是什么?SlindingMenu
2014-10-15 10:43:10
819
转载 安装交叉编译工具,执行arm-linux-gcc –v命令出现提示找不到该文件或目录?解决方法
一般情况下 使用的都是32的ubuntu 配置好环境后一般不会有问题,但是对于64位的ubuntu系统,在配好环境后 进入arm-linux-gcc安装目录执行arm-linux-gcc 会任然提示arm-linux-gcc 对于这个问题 纠结了好久 最后在一个英文博客里发现 arm-linux-gcc 在64位下需要安装ia32-libs 即执行sudo apt-get i
2014-07-25 09:24:49
1012
原创 最简单的Android JNI开发入门,JNI环境配置
最简单的Android JNI开发入门,JNI环境配置转载请注明出处,谢谢:本文主要讲述在adt-bundle-windows-x86_64-20131030构架Android JNI开发环境以及如何快速开发出一个Hello World程序。
2014-07-21 21:16:35
757
原创 关于Ubuntu12.04中配置NFS服务
关于Ubuntu12.04中配置NFS服务 1.进行NFS服务器端与客户端的安装:sudo apt-get install nfs-kernel-server nfs-common portmapnfs-kernel-server是服务器,nfs-common是客户端,安装客户端的作用是可以在本机进行NFS 服务的测试。3.配置挂载目录和权限 sudo
2014-07-07 14:26:59
523
转载 ubuntu12.4下tftp设置精华
转自:ubuntu12.4下tftp设置精华 因调试6410开发板,需在ubuntu12.04下搭建tftp服务器,在网搜了多个ubuntu下配置tftp的文件,发现都有或多或少的问题,如下是我的配置过程,已验证通过可供参考!!!1)安装tftp-hpa,tftpd-hpa, xinetd~$ sudo apt-get install tftp-hpa , tftpd-hpa,
2014-07-07 14:18:20
617
转载 ubuntu14上配置tftp服务器解决Transfer timed out
http://liucw.blog.51cto.com/6751239/12236951. 安装tftpd(tftp服务器)、tftp(tftp客户端)以及xinetd(超级服务器)1. 安装tftpd(tftp服务器)、tftp(tftp客户端)以及xinetd(超级服务器)1. 安装tf
2014-07-07 09:40:19
8006
转载 两台Linux主机互传文件可以使用SCP命令来实现
这两天刚搬进实验室,有了台新的台式电脑,不喜欢用实验室电脑编写代码,所以就将电脑装成了Ubuntu14的,就想办法将自己之前的虚拟机中的文件搬到Linux主机上,但是文件太多。后来在网上找到一个办法:原文出处:http://blog.youkuaiyun.com/winniepu/article/details/5546858 感谢作者记录一下,以后可能还用的上。当两台LI
2014-07-06 21:38:41
2495
转载 ubuntu自带VI编辑器不好用的解决办法
尊重原创新装的ubuntu12.04,本人绝对新手,在使用VI编辑器编辑文本时觉得实在是难用,因此找了几个解决方法如下:1. 安装vim full版本由于Ubuntu预安装的是tiny版本,就会导致我们在使用上的产生不便。所以我们要安装vim的full版本。首先,先卸掉旧版的vi,输入以下命令:sudo apt-get remove vim-common然后安装full
2014-07-03 09:40:54
997
转载 自动变量和非自动变量
自动变量 局部变量,如不作专门说明为静态变量,都是动态分配存储空间,存储在动态存储区中。这种变量叫自动变量。这种变量只在定义它们的时候才创建,在定义它们的函数返回时系统回收变量所占存储空间。对这些变量存储空间的分配和回收是由系统自动完成的,所以也叫自动变量。一般情况下,不作专门说明的局部变量,均是自动变量。自动变量也可用关键字auto作出说明。例如:(考虑到浏览器可能给作者本意要写在同一行的
2013-09-22 22:44:17
996
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人