- 博客(45)
- 资源 (10)
- 收藏
- 关注
原创 通过线上app做一个地域关联的粗略分析(程序员该去哪个城市发展)
前言移动互联网通过这么多年的发展,如果还有人说没有用过手机app,那肯定会被嘲笑落后于时代的发展。废话少说,我们今天就来看一下哪些地区移动互联网产业比较发达。数据都来源互联网,本人只代表个人看法,有错请指正。统计方法1、先从七麦榜单或者应用市场的app列表2、从app列表里面拿到开发商的公司名字3、通过开发商名字公司的工商信息或者公司地址4、通过地址做一个地区划分数据样本本人一共爬取到的2.6w个app数据,去重后大概有1.6w个app,清洗了一下发现华为应用市场..
2020-05-31 19:04:52
2669
原创 android 路径动画制作
1、前言 今天项目要用到一个类似微信发送么么哒,那种屏幕飘表情的功能,所以分析研究了一下,用到的技术应该是路径动画,不知道这样就正不正确,反正就是画一个路径线,然后对象根据这个路径去运动。所以就叫他路径动画了。路径动画要首先要解决的问题就是怎么画这个路径?然后路径画出来后怎么取路径上的所有点的坐标值? 这里解决这两个问题就看一个类PathMeasur
2015-03-04 20:19:58
13004
2
原创 android 5.0 Material Design酷炫风格的开源项目集合
一、前言Android 5.0上线有一个段时间了,估计小伙伴们都看到了Android5.0界面上相比前面几个版本有了很大的突破,给人一种非常酷炫,平滑的跳转,生动的界面切换,全新的感觉,Android用户终于可以感叹,Google升级了这么多个版本终于像样的搞了一回界面。开发者们看到这些优美的动画也要大户过瘾啊。github上面的高人们都已经饥渴难耐了出了写出了各种好用,炫丽的特效,我
2014-11-30 00:11:12
22946
17
原创 十分钟设置android状态栏一体化开源工程推荐
android 4.4 提供了一套能透明的系统ui样式给状态栏和导航栏,这样的话就不用向以前那样每天面对着黑乎乎的上下两条黑栏了,还可以调成跟activity 一样的样式,形成一个完整的主题。
2014-09-30 23:46:56
13387
原创 android动画的实战篇------乐动力旋转动画
一、前言 在现今App泛滥的市场上,各种App的功能都是你抄我的我抄你的时候,想做一个精品的App没有自己的风格,没有让用户眼前一亮的功能,或是效果的话都留步住用户了。随时都可以被其他应用替代。现今到处都喊着app简约而不简单,用户体验至上的年代,但有几个app能做到呢?可能当设计师想着想着就忘记了设计的初衷。 吐槽半天,今天来看一下乐动力的一个比较有意思的动画效
2014-02-17 23:27:25
8579
2
原创 ScrollView嵌套ListView只显示一行之计算的高度不正确的解决办法
1、前言从谷歌那里找到的ScrollView嵌套ListView只显示一行的解决办法相信很多人都遇到过,然后大部分都是用这位博主的办法解决的吧刚开始我也是用这个办法解决的,首先感谢这位哥的大私奉献,贴上地址http://blog.csdn.net/p106786860/article/details/104610152、解决的核心代码public void setListV
2013-12-19 09:40:09
6412
8
原创 用MaskFilter画抽奖大转盘Demo
1、前言MaskFilter类可以为Paint分配边缘效果。对MaskFilter的扩展可以对一个Paint边缘的alpha通道应用转换。Android包含了下面几种MaskFilter:BlurMaskFilter 指定了一个模糊的样式和半径来处理Paint的边缘。EmbossMaskFilter 指定了光源的方向和环境光强度来添加浮雕效果。使用方法:
2013-12-12 14:28:57
5227
原创 把方形头像切成圆形的头像工具类
1、前言现在很多的App的头像显示都改成的圆形的了,这样让人不会感觉生硬,像微信的公众号列表,易信的头像,来往的头像等等。做为程序猿肯定要跟上这个技术,所以找到了这个工具函数 /** * Crops a circle out of the thumbnail photo. */ public Bitmap getCroppedBitmap(Bitmap
2013-11-07 11:47:40
4120
1
原创 高仿QQ的手机管家的小火箭加速
1、前言相信很多人都用过腾讯的手机管家,用过这个App的人都应该知道桌面的火箭一键加速这个功能,当然这里我不是推荐大家去使用手机管家,相反这个功能大家还是小心为妙,我的U8800加完速之后快是快了,但这家伙把我手机的任务栏的进程都给搞蹦死了,去年买了个表啊。。。吐槽不多说,来正题,最近刚好在学UI设计就去研究一下这个小火箭是怎么做出来的。先来了解一下小火箭有神马动作先,首先在没有触碰它时,
2013-08-28 11:36:06
5452
8
原创 android通讯录右边字母过滤栏UI设计
1、前言现在很多app里都有一个用a-z字母放在屏幕的右边,然后点击字母栏快速定位到Listview的字母匹配的内容,使用通讯录里的联系人选择。如最近很火的易信里的添加好友的字母过滤。2、效果图3、设计过程先用一个相对布局做为父View,然后把自定义的View固定到布局的右边,然后用一个TextView显示当前的手指滑动的位置,同样固定到布局的中央,半透明。自定义V
2013-08-27 13:50:38
1564
原创 java与as3.0中for each使用的小陷阱
在程序开发中for可以说是一个非常非常常出现的东西,特别是在数组里面处理的时候,来看一下for的简单用法for与for each我们在使用for时来一个非常常见的代码段//as3.0for(var i:uint=0;i<n;i++){ trace("i:"i); }//javafor(int i=0;i<n;i++){
2013-08-26 11:35:18
3412
原创 报eclipse/jre/bin/javaw.exe错误
错误名:A Java RunTime Environment(Jre) or Java Development Kit(JDK) must be available in ordr to run Eclipse. No java virtual machine was found after searching the followlocations:C:/Program File/ecl
2013-08-26 11:35:16
1425
原创 软件工程之耦合性
构成耦合性的七种类型 一般模块之间可能的连接方式有七种,构成耦合性的七种类型。它们之间的关系为(由弱到强)非直接耦合(Nondirect Coupling) 如果两个模块之间没有直接关系,它们之间的联系完全是通过主模块的控制和调用来实现的,这就是非直接耦合。这种耦合的模块独立性最强。 。数据耦合(Data Coupling) 如果一个模块访问另一个模块时,彼此之间是通过数
2013-08-26 11:35:11
1014
原创 ubuntu12.04 64位配置Android开发环境
64位下,创建AVD,会出现如下错误:[2012-05-05 22:42:45 - SDK Manager] Failed to create the SD card.[2012-05-05 22:42:45 - SDK Manager] Failed to create sdcard in the AVD folder. 解决方案:原因是ubuntu64位的,必须安装ia32-lib
2013-08-26 11:35:07
680
转载 转Ubuntu下三国杀聊天乱码
Flash乱码在新版本(10.1)中已经基本解决了,不过玩三国杀的时候发现大部分中文显示正常,唯有聊天窗口的文字显示是方框,在网上找了很多地方,终于找到了原因,是因为ttf-arphic-uming字体没有安装。sudo apt-get install ttf-arphic-uming然后,果然,中文显示正常了!安装以下字体。sudo apt-get install ttf-wqy-z
2013-08-26 11:35:05
1011
原创 json解析之google开源工程gson的使用
json是在互联网上使用比较广、且比较轻量的一个数据格式。现在很多的开放平台都会用到这种格式做为返回的数据格式、比如新浪、腾讯的微博开放平台,都可以用这种数据格式来进行二次开发,Json使用很方便、我们可以写一个对应的类来解析这个数据。Google为了方便我们使用json开发了一个Gson包。我们只要导入这个包就可以很简单的解析和封装Json数据。我们对中国天气Api返回的数据做一个简单的示例
2013-08-26 11:35:02
1059
原创 android 加载图片并在上面画图
像Ps上的应用一样,我们加载一个图片然后在上面增加各种我们需要的挂件,文字效果等。我们今天完成一个简单的Demopackage com.example.fingerdraw;import java.io.FileNotFoundException;import java.io.OutputStream;import android.app.Activity;
2013-08-26 11:35:00
876
原创 android 基本的画图方法
//画布绘图的一些应用 //画一个点 Paint paint=new Paint(); paint.setColor(Color.BLUE); paint.setStrokeWidth(100);//设置点的宽度 Canvas canvas=new Canvas(bitmap); canvas.drawP
2013-08-26 11:34:58
707
原创 android camera根据屏幕图像大小设置显示
package com.example.camera;import java.io.File;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.text.format.Time;import android.util.Log;i
2013-08-26 11:34:56
839
原创 android camera以时间来命名照片文件
当我们拍照时一般都由Android自动设置文件名,而已我们一般都是用时间来命名文件,以防止出现一样的文件名而覆盖了原来的文件。所以有核心代码为://得到当前系统时间 Time t=new Time(); t.setToNow(); int year=t.year; int month=t.month;
2013-08-26 11:34:53
1009
原创 android camera的简单demo
package com.example.camera;import android.os.Bundle;import android.widget.ImageView;import android.app.Activity;import android.content.Intent;import android.graphics.Bitmap;public cl
2013-08-26 11:34:51
857
原创 getline在windows系统下的怪现象
先来看一下这个函数的作用:引用一下百科里的介绍原型 istream& getline ( istream &is , string &str , char delim ); istream& getline ( istream& , string& );参数 is 进行读入操作的输入流 str 存储读入的内容 delim 终结符返回值 与参数is
2013-08-26 11:34:49
846
原创 百度API的错误解决
错误:09-26 01:26:55.724: E/AndroidRuntime(404): java.lang.UnsatisfiedLinkError: initClass解决:百度提供的baidumapapi.jar和libBMapApiEngine_v1_3_0.so必须要放到libs目录下
2013-08-26 11:34:47
1127
原创 Android布局之RelativeLayout学习
先来看一下相对布局的主要属性有哪些:Android:layout_above 将该控件的底部置于给定ID的控件之上;Android:layout_below 将该控件的底部置于给定ID的控件之下;Android:layout_toLeftOf 将该控件的右边缘与给定ID的控件左边缘对齐;Android:layout_toRightOf 将该控件的左边缘与给定ID的控件右边缘
2013-08-26 11:34:44
644
原创 android 开发使用剪切板传递数据
在Android开发中我们经常要遇到的一个问题就是数据在不同的Activity之间的共享。在Android开发中有很多种方法可以达到这个目地。这里介绍一种比较常见、又常用的一种方法就是使用剪切板。我们都有用过Window、Linux上的Copy。这里介绍的就是这种。调用服务:设置Copy的信息String str="copy的信息";ClipboarManager clipbo
2013-08-26 11:34:42
681
原创 java 算法基础之七希尔排序
希尔排序是插入排序的一种类型,也可以用一个形象的叫法缩小增量法。基本思想就是把一个数组分为好几个数组,有点像分治法,不过这里的划分是用一个常量d来控制。这个0位置移动到第一个,这样就会浪费很大,使用这个改进的希尔排序可以实现数据元素的大跨度的移动。也就是这个算法的优越之处。 希尔排序过程图解:数组:45,20,80,40,26,58,66,70d=5时 分组为:45,5
2013-08-26 11:34:40
627
原创 java 算法基础之六插入排序与冒泡排序
1、插入排序插入是比较简单的一种排序方法,基本思想就是把数据分组两段,一部分是有序,另一部分是待排序的。把有序的数据不断的加大到全数组完成排序。代码完成如下:class insert { public void insert_sort(int[] arrays){ for(int i=0;i){ for(int j=i;j>
2013-08-26 11:34:38
604
原创 android 游戏开发之背景音乐的应用
在前面写到了一个即时音效的应用,主要应用在短了7s的声音,对于背景音乐这种对延时不是很严格的游戏来说,而又对音乐长度有要求的应用我们用的还是地MediaPlayer这个类里的东西。我们现在使用的音乐播放器大多也是用这个来实现的。所以游戏背景音乐对这个来说也是学习一下的。 初始代的步骤:1、用MediaPlayer new一个对象出来2、设置这个对象要播放的文件路径3、调用用pr
2013-08-26 11:34:36
627
原创 android 游戏开发之即时音效Demo
MediaPlayer与即时音效在android游戏开发中,有一些需要一点就播放音乐的需求,比如在飞车中的加速声音、下旗的滴滴声等,这些很短快速的就需要使用Android的即时音效。如果用MediaPlayer会占用大量的系统资源,而且播放的时候还需要缓冲,有较大的时延,因此即时音效就能补充它的不足。即时音效的主要类 public SoundPool (int maxStreams
2013-08-26 11:34:33
769
原创 java 算法基础之五快速排序法
快速排序法与一般的冒泡排序法差不多,区别可能就是冒泡会不断的交换,而快速排序法先找到最小的那个值,然后把这个最小值放在数组的最前面,游标往下走,举个例子:原数组:4,5,1,7,6第一趟:1,5,4,7,6第二趟:1,4,5,7,6第三趟:1,4,5,6,7这个原理比较简单。代码由下:class Select{ public void select
2013-08-26 11:34:31
542
原创 java 算法基础之四堆排序法
堆排序是一种利用完全二叉树来解决问题的高效算法,合法的最大堆树要满足一个条件就是每一个结点值都要大于或等于它的孩子结点值。在一个数组中那专业法表示为:arrays[i]>=arrays[2*i+1] && arrays[i]>=arrays[2*i+2]; 最小堆类似,只要改为冒最小值即可。堆排序树的构造过程找最大值过程由下图,数组arrays[0....n]为:17,8,45,84,2,
2013-08-26 11:34:29
480
原创 java 算法基础之三合并排序法
合并排序算法是用分治策略实现对N个元素进行排序的算法。其基本思想是:将待排序元素分成大小大致相同 的两个子集合,分别 对两个子集合进行排序,最终将排好序的子集合合并成所要求的排好序的集合。重点:1.分治的实现 2.合并的实现 分治,就是把整个集合的元素一直除2化分,一直化为到没有两个元素开始合并。图:分治的时候比较简单,一直除2递归就行了,合并的时候为了方便就借助另
2013-08-26 11:34:27
760
原创 java 算法基础之二快速排序算法
所谓的快速排序的思想就是,首先把数组的第一个数拿出来做为一个key,在前后分别设置一个i,j做为标识,然后拿这个key对这个数组从后面往前遍历,及j--,直到找到第一个小于这个key的那个数,然后交换这两个值,交换完成后,我们拿着这个key要从i往后遍历了,及i++;一直循环到i=j结束,当这里结束后,我们会发现大于这个key的值都会跑到这个key的后面,不是的话就可能你写错了,小于这个key的就
2013-08-26 11:34:24
715
原创 java 算法基础之一寻找最大公约数
最近发现在搞Android的都要懂一点数据结构和算法才能进阶到高手,所以就回去复习了一下基础,为一些公司招聘做题做准备。今天研究了一下最大公约数的求法,在网上也找了不同的解法,现在就想总结一下,拿出来分享给大家,共同 学习首先讲一个什么是公约数,这个问题我们小学都学过,可能有一部分人已经忘记了,所以还是讲一下,假设有两个数a,b,所谓的公约数就是能把a,b整除的最大整数。明白了要求我们就来解决问题
2013-08-26 11:34:22
591
原创 HttpClient 4.1.3学习笔记之一
HttpClient是目前一个非常流行的对网络编程的一个函数库,他能完成的功能跟一个浏览器一样,只是他不执行一些脚本语句,如javascript。HttpClient提供了Http支持的所有访问的方法,我们来看一个比较常 的两个方法Get和Post,下面是最基本的应用示例: 1 package cn.edu.gdou; 2 3 import java.io.IOExcep
2013-08-26 11:34:20
698
原创 编译原理4种文法类型
1956年,Chomsky建立形式语言的描述。通过对产生式的施加不同的限制,Chomsky把文法分为4种类型 首先定义一个产生式 α→β0型文法定义:0型文法(PSG): α∈(VN∪VT)* ,且至少含一个VNβ∈(VN∪VT)*对产生式没有任何限制 例如:A0→A0 , A1→B0型文法说明:0型文法也称为短语
2013-08-26 11:34:17
570
原创 eoe源码解读之旅-----网络模块的设计
网络模块设计思想eoe里的网络访问模块都是经过静态类的调用来实现的,来看分析一下简单的设计过程。首先是内容请求RequestCacheUtil类这个类只有一个共有方法,就是getRequestContent这个拿内容的方法。这里的方法都是一些静态的方法,完成的简单流程如下:在入口先判断SD卡是否可用,然后确定缓存的目录传到下级,在getCacheRequest查看是否要拿缓存,如果不用
2013-08-26 10:17:23
1307
原创 android view的抖动效果
如果想让一个View控件抖动起来,代码非常简单,只要控件的位置平移一下就行了TranslateAnimation anim = new TranslateAnimation(imageView.getWidth(), imageView.getWidth() + 10, imageView.getHeight(), imageView.getHeight()); anim.se
2013-08-23 18:27:44
3268
半圆菜单按钮
2014-03-30
乐动力动画
2014-02-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人