自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牛肉丸

专注于移动端

  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 android UI AppBarLayout CollapsingToolbarLayout

AppBarLayout简单介绍AppBarLayout 是继承LinerLayout实现的一个ViewGroup容器组件,它是为了Material Design设计的App Bar,支持手势滑动操作他的主要功能让子View(AppBar)可以选择他们自己的滚动行为(需要跟CoordinatorLayout配合使用,下面会介绍如何配合CoordinatorLayout组件)。 (1) scroll

2017-04-05 13:21:26 362 1

原创 android UI StatusBar(手机顶部状态栏)适配

前言:状态栏指定android手机上顶部显示手机状态信息的位置,状态栏是在4.4(19)加入的,在4.4以前的系统上无法实现。现在世面上的手机android4.4一下的占比不是很大,所以不是太影响.本文目的解决4.4以上适配问题。android 4.4(19)的界面android 6.0(23)的界面问题:19和23的界面statusbar不统一,颜色各异 出现原因:19根本没有setStat

2017-04-04 02:35:34 2580

原创 【Android】Merge讲解与实例

单独将标签做个介绍,是因为它在优化UI结构时起到很重要的作用。目的是通过删减多余或者额外的层级,从而优化整个Android Layout的结构。核心功能就是减少冗余的层次从而达到优化UI的目的! 将通过一个例子来了解这个标签实际所产生的作用,这样可以更直观的了解的用法。 建立一个简单的Layout,其中包含两个Views元素:ImageView和TextView 默认状态下我们将这两个元素放在F

2017-04-02 18:36:47 412

原创 对activity的提前处理写的PrefUtil类

对activity的提前处理,主要应用于获取本地值,方便acitivity的生成,也用于activity运行时改变某些必须变量。 public class PrefUtil {private static final String PRE_NAME = "io.github.laucherish.purezhihud_preferences";private static final Strin

2017-04-02 16:03:59 301

原创 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-11-28 10:13:05 162

转载 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2016-11-24 23:20:25 239

原创 linux沾着位

1:在列文件或目录时,有时会遇到“ t”位。“t”代表了粘性位。如果在一个目录上出现“t”位,这就意味着该目录中的文件只有其属主才可以删除,即使某个同组用户具有和属主同等的权限。不过有的系统在这一规则上并不十分严格。 如果一个目录设置了沾着位,只有对该目录具有写权限的用户并且满足下列条件之一,才能删除和重命名该目录下的文件: ×拥有此文件 ×拥有此目录 ×是超级用户2:如果在文件列表时看到“

2016-11-20 19:43:44 265

转载 程序流程图的画法

1、程序流程图的作用 程序流程图的作用程序流程图的作用程序流程图的作用 程序流程图是人们对解决问题的方法、思路或算法的一种描述。 流程图的优点: (a)采用简单规范的符号,画法简单; (b)结构清晰,逻辑性强; (c)便于描述,容易理解。 2、流程图采用的符号 三种循环

2016-11-14 15:39:44 890

原创 unix环境高级编程(文件和目录)

不是根据书实际写了,所有实际的数据均来自于我自己的ubuntu,下面操作系统的内核版本: Linux version 4.4.0-45-generic (buildd@lgw01-19) (gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.2) ) #66-Ubuntu SMP Wed Oct 19 14:12:05 UTC 2016u

2016-11-11 21:55:21 468

转载 Android性能优化典范之多线程篇

本文涉及的内容有:多线程并发的性能问题,介绍了 AsyncTask,HandlerThread,IntentService 与 ThreadPool 分别适合的使用场景以及各自的使用注意事项,这是一篇了解 Android 多线程编程不可多得的基础文章,清楚的了解这些 Android 系统提供的多线程基础组件之间的差异以及优缺点,才能够在项目实战中做出最恰当的选择。Threading Perform

2016-11-10 22:19:04 280

原创 AsyncTask的理解

使用AsyncTask的规则 AsyncTask的类必须在UI线程加载(从4.1开始系统会帮我们自动完成) AsyncTask对象必须在UI线程创建 execute方法必须在UI线程调用 不要在你的程序中去直接调用onPreExecute(), onPostExecute, doInBackground, onProgressUpdate方法 一个AsyncTask对象只能执行一次,即只能

2016-11-10 21:44:52 438

转载 android looper

Understanding Looper Looper是用于给一个线程添加一个消息队列(MessageQueue),并且循环等待,当有消息时会唤起线程来处理消息的一个工具,直到线程结束为止。通常情况下不会用到Looper,因为对于Activity,Service等系统组件,Frameworks已经为我们初始化好了线程(俗称的UI线程或主线程),在其内含有一个Looper,和由Looper创建的消息

2016-11-10 20:16:02 226

转载 String,StringBuffer与StringBuilder的区别??

String,StringBuffer与StringBuilder的区别??String 字符串常量 StringBuffer 字符串变量(线程安全) StringBuilder 字符串变量(非线程安全) 简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个

2016-11-10 19:50:23 212

原创 android中viewgroup中ontouch的传递机制

android中viewgroup中ontouch的传递机制Android的触摸事件:onClick, onScroll, onFling等等,都是由许多个Touch组成的。其中Touch的第一个状态肯定是ACTION_DOWN, 表示按下了屏幕。之后,touch将会有后续事件,可能是: ACTION_MOVE //表示为移动手势 ACTION_UP //表示为离开屏幕 ACTION_CA

2016-11-09 00:35:12 321

原创 欢迎使用CSDN-markdown编辑器

andorid绘图公共函数:/** * author:beef * email :460955584@qq.com * created 2016/11/8 0:45 * @param resources 资源id. * @param context 上下文. * 依赖drawableToBitamp函数。 */ publ

2016-11-08 00:49:23 187

原创 java代理理解

main 类:import java.lang.reflect.InvocationTargetException;  import java.lang.reflect.Method;  import java.lang.reflect.Proxy;    public class Main  {      private Button button = new But

2016-04-17 03:24:35 259

原创 安卓中对notifyDataSetChanged()和notifyDataSetInvalidated的源码解析

学习它的用处:一些面向对象的编程方式,提供了一种构建对象间复杂网络互连的能力。当对象们连接在一起时,它们就可以相互提供服务和信息。通常来说,当某个对象的状态发生改变时,你仍然需要对象之间能互相通信。但是出于各种原因,你也许并不愿意因为代码环境的改变而对代码做大的修改。也许,你只想根据你的具体应用环境而改进通信代码。或者,你只想简单的重新构造通信代码来避免类和类之间的相互依赖与相

2016-04-17 01:26:26 560

原创 volatile的用处

#include #include int main(){    volatile int i = 10;int a = i;printf("i= %d\n", a);__asm{mov dword ptr [ebp - 4], 20h }int b = i;printf("i= %d\n",b); std::cin.ge

2015-11-23 12:23:36 268

原创 c++ 排序

#include #include using namespace std;int random(int c){    while(true)    {         int a=rand();         if (a         {             return a;         }    }}class Demo_s

2015-04-29 11:23:35 400

原创 c++简单链表

c++简单链表

2015-04-28 17:10:47 530

转载 JS中的闭包

var result=[];function foo(){ var i= 0; for (;i){ result[i]=function(){ alert(i) } }};foo();result[0](); // 3result[1](); // 3result[2](); // 3为什么都是

2015-04-22 10:13:20 299

原创 C++ STL

初学STL,,朋友强烈推荐我学。以下是初次接触看了其他人的文章分析及心得,  #include #include using namespace std;#define SIZE 100int iarray[SIZE];int main(){  iarray[20] = 50;  int* ip = find(iarray, iarray

2015-04-12 23:33:48 476

原创 随机行走

随机移动 c++

2015-04-05 21:02:30 924

statusbar适配Demo

statusbar适配Demo支持4.4以上

2017-04-04

空空如也

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

TA关注的人

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