- 博客(36)
- 资源 (4)
- 收藏
- 关注
转载 Android开发实践:在任意目录执行NDK编译
转载自:http://www.linuxidc.com/Linux/2014-12/110168.htm前面一篇文章简单地介绍了Android ndk编译的一些命令行参数(http://www.linuxidc.com/Linux/2014-12/110167.htm),一般情况下,我们都是在Android工程的jni目录下编译本地代码,或许用不到那些参数,但是如果你需
2018-04-21 23:57:30 607
转载 Android系统编译过程中常见问题汇总(1)
作者:徐文1、问题一:/bin/bash: bison: 未找到命令 解决方法:$ sudo apt-get install bison 2、问题二:You are attempting to build with the incorrect version of java.Your version is: /bin/bash: java: 未找到命令.The correct version is...
2018-03-06 16:00:04 536
转载 类找不到异常
一般是findClass方法中会抛出ClassNotFoundException的异常,defineClass会抛出NoClassDefFoundError的错误,我们看到findClass是在外部存储器中查找class文件的,defineClass是在内存中定义class的时候所以总结:加载时从外存储器找不到需要的class就出现ClassNotFoundException
2017-10-26 17:42:14 1400
原创 android 8.0新特性
背景介绍谷歌2017 I/O开发者大会今年将于5月17-19日在美国加州举办。大会将跟往年一样发布最新的 Android 系统,今年为 Android 8.0。谷歌在今年3 月21日发布 Android 新系统开发者预览版时已给新系统取名为 Android O。自2008 年发布以来, Android 依靠 Google 的生态运作,全球市场份额在2016年底已超过85% 。而近几年依靠 Andro
2017-07-10 11:24:19 697
转载 android:maxHeight,android:maxWidth失效,不起作用
版权声明:本文为Zhang Phil原创文章,欢迎转载!转载请注明出处:http://blog.csdn.net/zhangphil在Android的布局文件中,设置某一个view的最大宽和最大高,比如ImageView,如果仅仅这么做:android:maxHeight="25dip" android:maxWidth="25dip" 没有作用,完全失效。原因是:仅仅设置view的maxHe
2017-06-19 15:42:31 15786 12
原创 hybird架构之离线缓存
hybird架构的优缺点现在越来越多的应用采用hybird架构进行移动app开发了,主要是其有以下几个优点: 1. H5开发效率高、跨平台、低层本 2. H5从业务开发上讲,没有版本问题,有BUG能及时修复 但同时H5开发也有些明显的缺点: 1. 只能使用有限的设备底层功能(无法使用摄像头、方向传感器、重力传感器、拨号、GPS、语音、短信、蓝牙等功能) 2. 体验没有原生好,过于依
2017-05-21 17:22:43 2009
原创 加密解密,数字签名及证书
欢迎使用Markdown编辑器写博客本Markdown编辑器使用[StackEdit][6]修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用
2016-12-12 16:43:57 7916 3
原创 Android gradle配置文件简析
Android gradle配置文件简析利用android studio创建一个默认的android app项目,得到的目录结构如下 其中箭头所指向的三个gradle文件即是执行app编译打包的构建脚本 当在要目录下执行gradle时,gradle运行时框架会依次解析执行项目的gradle文件,先解析执行根目录下的setting.gradle和build.gradle两个文件,然后根据modul
2016-11-14 21:48:36 1116 1
原创 ios中代码打开app store
打开app store,并跳转到特定的app下载页面.注意地址后面最后一部分id933148709代表特定的app,大家可以换成自己指定的app id,该app id是该app在app应用商店中url的最后一部分NSString *str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/cn/app/id933148709"]
2016-01-21 18:11:38 1003
原创 ios系统获取ssid
//获取ssid- (NSString *)getCurrentConnectSsid { NSString *currentSsid = @"未知"; CFArrayRef myArray = CNCopySupportedInterfaces(); if (myArray != nil) { CFDictionaryRef myDict = CNCopy
2016-01-04 16:05:23 921
原创 ios中代码打开第三方app
被打开的第三方需要定义URL Schemas,比如阿里小智,其定义的URL Schemas为alink://open,故打开阿里小智的app代码如下: //打开阿里小智 BOOL result = [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"alink://open"]]; if(!result
2015-12-26 10:28:01 598
原创 iOS侧滑菜单实现
这个是参照鸿洋的android侧滑菜单实现的,同样利用scrollview实现,很简单,这是鸿洋侧滑的实现链接打造最简单的自定义侧滑菜单第一种测滑#import <UIKit/UIKit.h>@interface SlideMenu : UIScrollView@property (nonatomic, assign) BOOL isMenuOpen;/**设置菜单和内容*/-(void)se
2015-10-22 19:54:15 4233
原创 FrameLayout的测量
@Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { int count = getChildCount(); //如果传入的测量规格有一个不是match_parent,则将其标为true(这里为了处理当一个父控件,比如FrameLayout布局参数设置为wr
2015-10-12 19:36:25 731
原创 ViewGroup与测量相关的几个方法
//此方法逻辑已经总结在下面的表中 //这个方法是根据父类传递的规格以及子类的layout参数来共同确定新规格 //参数spec是父亲传入的规格,padding是viewGroup的padding(水平或竖直)和子view的margin(水平或竖直)(如果都有的话),childDimension其实就是子view的layout参数(layoutParam的width或者heigh
2015-10-12 19:15:52 1297
原创 View中与测量有关的一些方法
/** * Utility to return a default size. Uses the supplied size if the * MeasureSpec imposed no constraints. Will get larger if allowed * by the MeasureSpec. * * @param size Def
2015-10-12 17:39:27 492
原创 android网络访问顺序
如果打开了wifi并且连接上了热点,则会用wifi连接而不用数据连接如果打开了wifi但其没有连接热点,则用数据连接如果没有打开wifi,则用数据连接
2015-10-12 11:07:08 681
原创 ScrollView测量分析
ScrollView是继承FrameLayout,其对子view的测量比较怪异,因为其重写了FrameLayout中的几个测量方法 @Override //scrollView重写的onMeasure方法 protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { //调用frameLa
2015-10-05 19:50:23 1595
原创 ViewPager实现无线循环滚动
实现思路,我们普通的ViewPager无法实现无线循环滚动,主要是因为我们在适配器里返回的view数量有限,所以也有就是有限的几页可以滚动,如果将适配器里返回的view数量设置为无穷大,那么可以滚动的页面就无穷多了,可以无穷滚动。实现代码public class MainActivity extends Activity { private ViewPager vp; priva
2015-09-28 09:56:23 630
原创 android圆角图片的实现
public class CornerImageView extends ImageView{ private Paint mPaint = new Paint(); //圆角半径 private float rx = 0; private float ry = 0; public CornerImageView(Context context, Attrib
2015-09-22 18:02:11 392
原创 android状态选择器小技巧
今天看别人写的状态选择器学了一个小技巧,见如下代码,小技巧主要是selector的两个属性android:enterFadeDuration以及android:exitFadeDuration,设置此属性可以使状态变换时会有淡入淡出的效果<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.and
2015-09-04 14:27:36 2161
原创 XListView源码分析
XListView源码共有三个java类 XListViewHeader类是是一个LinearLayout,代表刷新头部
2015-09-02 10:22:24 489
原创 Drawable的setBounds方法
Drawable的setBounds方法有四个参数,setBounds(int left, int top, int right, int bottom),这个四参数指的是drawable将在被绘制在canvas的哪个矩形区域内。例如@Override protected void onDraw(Canvas canvas) { drawable.setBounds(100,
2015-08-29 23:44:20 47572
原创 ListView的setSelection用法
这次研究xListView源码看见其使用了这个setSelection(int position)方法,看了下其英文注释不明白什么意思,自己写了个demo了解了下其用法.这个方法的作用就是将第position个item显示在listView的最上面一项,假如有一个ListView控件,其一次只能显示10个item,但现在有20个数据项,设置好adapter以后,默认是第一个数据项显示在最上面,如果
2015-08-25 09:52:49 22822 3
原创 开源项目SwipeMenuListView学习笔记
SwipeMenuView里的每个菜单项都是个LinearLayout,其内部包含一个接口,用于将内部菜单项的点击事件暴露给外部//菜单点击监听接口,用于向外暴露菜单项点击事件 public static interface OnSwipeItemClickListener { //view表示被点击的菜单,menu代表菜单数据,index表示被点击的菜单项索引
2015-08-24 15:30:12 2086
原创 measureChild详解
这个函数是viewGroup提供的方法,供其子类使用测量child尺寸//测量是由父控件与子控件参数共同决定的,这里传入的是父控件的参考尺寸 protected void measureChild(View child, int parentWidthMeasureSpec, int parentHeightMeasureSpec) { //这里获取
2015-08-20 22:37:07 1037
原创 UITableView滑动删除学习笔记
UITableView自带滑动删除功能,不过默认是不开启的,需要使cell可以滑动并显示删除按钮,应该实现如下协议方法(这个方法也是删除按钮点击事件处理方法)#pragma mark 删除操作 UITableViewDataSource协议定义的方法//实现了此协议方法向左滑动就会显示删除按钮,只需要实现下就行了,方法体可以不写任何代码,但如果方法体不写代码就无法处理删除按钮点击事件了,删除按钮点
2015-08-20 14:15:25 520
原创 view测量学习笔记
view的onMeasure()方法protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { //如果父控件指定了大小(mode为exacty或者at_most),将其设置为父控件指定的值,否则设置为该控件最小宽度(通过minWidth及minHeight指定或者根据背景图片指定),其中用到的两个函数见下
2015-08-20 00:27:21 457
原创 getWidth和getMeausuredWidth的区别
一直疑惑为什么有个getWidth还要有个getMeasuredWidth方法,以为两者是一样的,实际中好像大多数情况确定是一样的。今天研究View.offsetLeftAndRight函数以及View.getLeft函数,稍微看了下源码,貌似知道了两者的区别.getMeasuredWidth是onMeasure阶段根据view的布局参数以及其padding等各种属性计算出来的,由View.set
2015-08-13 15:15:00 870 1
原创 android之view测量总结
首先根view即DecorView会调用measure(int widthMeasureSpec, int heightMeasureSpec)方法,其传入宽度规格size分别为屏幕宽高,mode都是EXACTY。measure方法会调用回调函数onMeasure(int widthMeasureSpec, int heightMeasureSpec)protected void onMeas
2015-08-12 15:28:47 422
原创 android事件分发总结
以下是activity类中的事件分发方法 public boolean dispatchTouchEvent(MotionEvent ev) { if (ev.getAction() == MotionEvent.ACTION_DOWN) { onUserInteraction(); } if (getWindow().s
2015-08-12 14:33:52 442
原创 属性动画学习总结
一直以来用补间动画用的比较多,属性动画用的比较少,并用是用后即忘,每次都得在网上看看别人例子,属性动画的博文比较多,在此列出我看过的几篇郭霖的系列Android属性动画完全解析(上),初识属性动画的基本用法 Android属性动画完全解析(中),ValueAnimator和ObjectAnimator的高级用法 Android属性动画完全解析(下),Interpolator和ViewPro
2015-08-10 18:44:35 836
原创 hongyang的博文深入理解Android中的自定义属性 学习笔记
自定义view属性已经写过不少了,但每次写时都是网上找个文章按步骤照葫芦画瓢,没有好好分析,尤其是对AttributeSet和TypedArray不太了解,今天看了hongyang的博文深入理解Android中的自定义属性,感觉认识进一步加深了,在此作下总结.AttributeSet里面包含了所有我们在布局文件里面给view设置的属性,代码获取属性值的方法如下public MyView(Cont
2015-08-08 17:10:29 2307 1
原创 activity切换动画总结
转载请注明出处:http://blog.csdn.net/szyangzhen/article/details/47357237今天没事总结了一下activity切换动画相关知识,包括淡入淡出动画,左滑入右滑出,顶部滑入底部滑出等比较简单的动画,现在记录如下activity淡入动画,放在文件act_switch_fade_in.xml中<?xml version="1.0" encoding="ut
2015-08-08 12:08:52 1784 1
原创 LayoutInflater方法Inflate三种重载的区别
LayoutInflater方法Inflate三种重载的区别今天学习了hongyang的博文Android LayoutInflater深度解析 给你带来全新的认识,对LayoutInflater三个重载方法inflate的认识又加深了一步,在此摘要其博文要点:Inflate(resId , null ) 只创建temp ,返回tempInflate(resId , parent, false )创
2015-08-07 17:38:16 565
The C++ Programming Language Special 3rd Edition.pdf
2009-10-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人