自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (7)
  • 收藏
  • 关注

原创 Android中播放webp动画的一种方式:FrameSequenceDrawable

简介本篇主要是介绍FrameSequenceDrawable的相关实现原理的文章,FrameSequenceDrawable是Google实现的可以播放Webp动画的Drawable,这个并没有在SDK里面,但是我们可以在googlesource中看到相关的代码,FrameSequenceDrawable相关代码地址播放效果在介绍之前,我们可以先看一下播放效果: 我想直接...

2018-03-14 11:53:24 4649

原创 Android8.0对于CoordinatorLayout、RecyclerView 精准fling的优化

之前为了开发需求,学习了NestedScrolling机制,并使用CoordinatorLayout、AppBarLayout、RecyclerView配合实现了相关的效果,还写了一篇关于分析原理的文章关于CoordinatorLayout AppBarLayout原理的一些分析,当时做完需求以后,内心其实是一只有种遗憾的,因为在使用RecyclerView时,对于向上滑动的fling效果其实是有...

2018-03-14 11:52:45 5654 2

原创 关于CoordinatorLayout AppBarLayout原理的一些分析

这几天学了一些CoordinatorLayout、AppBarLayout配合使用的一些方法,之前还写了一篇CoordinatorLayout Behavior一些笔记,通过这几天对源码的阅读,现在对CoordinatorLayout、AppBarLayout这部分的内容有了更深一层的理解,接下来我就把我所理解的源码简单的分析一下。一、 NestedScrolling机制Coordinat...

2018-03-14 11:51:24 736

原创 RecyclerView 获取滑动停止时展示出的item范围

RecyclerView 获取滑动停止时展示出的item范围

2017-03-15 10:56:41 4925 3

原创 Android播放器菜单的显示隐藏动画效果

Android播放器菜单的显示隐藏动画效果

2016-12-18 20:11:09 2246

原创 Android Studio 拷贝使用外部数据库

Android Studio 拷贝使用外部数据库

2016-12-17 18:26:36 4885

原创 二分查找的递归和非递归实现

二分查找

2016-07-28 14:42:29 366

原创 Android标签容器控件的实现

Android中标签容器控件的实现,在一些APP中我们可以看到一些存放标签的容器控件,和我们平时使用的一些布局方式有些不同,它们一般都可以自动适应屏幕的宽度进行布局,根据对自定义控件的一些理解,今天写一个简单的标签容器控件,项目源码在最后给出。

2016-07-21 14:57:00 1770 1

原创 Android轮播图的实现

Android轮播图的实现这几天看了《Android开发艺术探索》这本书真的是挺不错的,学了自定义View之后打算动手实践一个轮播图控件,网上有很多实现的方法,我最后实现起来跟他们也基本上都是大同小异,主要我也是为了练练动手能力。先来个效果图,图片是在百度搜的正经图片 分析实现轮播图的方式大体上我看到了三种,一是使用安卓的Gallery控件来实现,二是使用HorizontalScrollView,

2016-07-18 15:52:47 2723 3

转载 Android AsyncTask完全解析,带你从源码的角度彻底理解

原文:http://blog.csdn.net/guolin_blog/article/details/11711405我们都知道,Android UI是线程不安全的,如果想要在子线程里进行UI操作,就需要借助Android的异步消息处理机制。不过为了更加方便我们在子线程中更新UI元素,Android从1.5版本就引入了一个AsyncTask类,使用它就可以非常灵活方便地从子线程切

2016-03-18 14:23:04 313

原创 数独游戏的简单回溯解法

今天哥们儿突然让我帮着解个数独,一开始以为只要循环遍历就可以了,后来想想有些太麻烦,想着自己以前写过八皇后问题,研究了一下,还真弄出来了,高兴!#include #include int num[9][9];int posX[81]= {0};int posY[81]= {0};int resCount=0;using namespace std;void print(){

2015-11-18 23:28:53 958

转载 Integer与int的比较

如果面试官问Integer与int的区别:估计大多数人只会说道两点,Ingeter是int的包装类,int的初值为0,Ingeter的初值为null。但是如果面试官再问一下Integer i = 1;int ii = 1; i==ii为true还是为false?估计就有一部分人答不出来了,如果再问一下其他的,估计更多的人会头脑一片混乱。所以我对它们进行了总结,希望对大家有帮助。  首先看代

2015-10-06 20:56:33 313

转载 stringBuffer 和 stringBUilder 的区别

相信大家看到过很多比较String和StringBuffer区别的文章,也明白这两者的区别,然而自从Java 5.0发布以后,我们的比较列表上将多出一个对象了,这就是StringBuilder类。String类是不可变类,任何对String的改变都会引发新的String对象的生成;而StringBuffer则是可变类,任何对它所指代的字符串的改变都不会产生新的对象,可变和不可变类这一对对象已经齐全

2015-10-05 22:44:14 312

原创 模拟Listener对button的监听过程

今天突然冒出一种想法,看看自己到底理解不理解平时对各种按钮实现监听的过程,就用c++简单实现了一下!首先是写一个抽象的Listener类,java中有接口,C++中就只能使用抽象类了。Listener类的.h文件,只需要看.h即可,因为在.cpp中没有需要实现的方法。#ifndef LISTENER_H#define LISTENER_H#include "Button.h"cl

2015-08-09 23:00:25 419

原创 快速排序

快速排序的基本思想:在顺序表中随机选取一位作为基准位,通过由两边像中间扫描,将不大于基准的元素放在左侧,不小于基准的元素放在右侧,将基准位作为中间节点,两侧分别递归进行快速排序,直到分组元素个数小于等于1;一般我们都以第一位作为基准位,代码如下:#include #include #include #define LENGTH 10using namespace std;void p

2015-05-15 13:28:54 303

原创 冒泡排序

#include #include #define length 10using namespace std;int num[length];void print(){ for(int i=0;i<length;++i) { cout<<num[i]<<' '; } cout<<endl;}int main(){ for(i

2015-05-12 21:45:38 287

原创 Android中ListView的Adapter和ContextMenu

好长时间没写listview了,前几天在写的时候忽然发现都忘了,今天就写个博客记录一下吧。首先,安卓的Listview如果想显示内容的话,需要我们为其设定一个Adapter适配器,可以使用系统中提供的SimpleAdapter,但是我更习惯于自己编写一个Adapter继承于BaseAdapter。首先是适配器的实现:package com.humorousz.listviewdemo;

2015-05-11 21:00:40 771

原创 Android中再按一次退出效果的简单实现

在软件退出时,为了友好的提示用户是否真的想退出程序,在PC机上我们往往是采用弹出messagebox的方法,虽然安卓中也有类似的控件,但是使用起来并没有那么的方便。现在大多数程序设计的提示方式往往就是“再按一次退出”这样会增加用户的体验感。   我们实现思路就是,在程序中定义一个变量来表示反应时间,即用户在什么时间范围内按下返回键才会退出。需要定义一个记录上次按下返回键时间的变量,这样通过在O

2015-04-01 14:55:15 967

转载 C++中const对象与const成员函数

    在自定义类型前加入const修饰符,可以将对象声明为常对象(如const MyClass A)。自定义类型的const常量不仅像基本数据类型那样不可以作左值,而且const对象的任意成员变量也不能被修改(mutable成员变量除外),为了保证const对象成员变量不能被修改,C++中规定了const对象只能调用一种特殊的成员函数——const成员函数。所谓const成员函数,就是不修改对象...

2015-03-26 14:04:47 524

转载 C++中有关const修饰指针和变量

const限定符以及const修饰指针生命  1.const关键字并不是c++中特有的关键字,而是c90中新增的标准。const经常被我们用于常量的声明和指针的修饰。当变量被const限定符修饰时,该变量称为常量(如const int a=10),常量就是不能作左值的变量,const修饰的常量存储在数据段,并且只能读取,所以在生命const常量时必须进行初始化,否则编译器会报错(如const  i...

2015-03-25 22:24:03 592

jdk-8u151-macosx-x64.dmg.zip

jdk-8u151 dmg

2021-08-04

Android简单标签控件

实现的简单标签容器控件

2016-07-21

Android轮播图的实现工程

安卓系统轮播图控件的简单实现

2016-07-20

Android轮播图

Android轮播图

2016-07-20

语音计算器

基于百度语音sdk的语音播报计算器,可以播报计算结果,有按键声音,可播报当前时间

2015-01-25

语音计算器apk

基于百度语音的计算器,具有输入播报,结果播报,音量调整,获取时间等功能

2015-01-20

ListViewDemo

ListviewDemo的例子,简单的适配器和contextMenu的实现

2005-09-23

空空如也

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

TA关注的人

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