06 2018 档案
摘要:Android5.0开始,CheckBox带有material design动画效果,其默认的样式如下图所示: 可以看到,在上图中,CheckBox的边框为灰色,当被选中后,填充色为绿色。 那么如果我们想要改变边框和填充色,同时也保存material design动画效果,应该怎么做呢。 在styl
阅读全文
摘要:要用TextView使用渐变色,那我们就必须要了解LinearGradient(线性渐变)的用法。 LinearGradient的参数解释 LinearGradient也称作线性渲染,LinearGradient的作用是实现某一区域内颜色的线性渐变效果,看源码你就知道他是shader的子类。 它有两
阅读全文
摘要:我们知道Eclipse创建的工程默认是有个assets文件夹的,但是Android studio默认没有帮我们创建,那么我们就自己创建一个就好啦。 (1)手动创建 在项目的顶部有个下拉,默认选择的是Android, 但是在Android 模式下不能真实反映整个工程的目录结构,所以我们点击它在下拉选项
阅读全文
摘要:Android系统默认字体支持四种字体,分别为: 除此之外还可以使用其他字体文件(*.ttf) 关于后三种字体的区别可以看: http://kb.cnblogs.com/page/192018/ 一、使用系统自带的字体 1.在xml中修改字体 2.在java代码中修改字体 第一步: 获取TextVi
阅读全文
摘要:Android加载/处理超大图片神器!SubsamplingScaleImageView(subsampling-scale-image-view)【系列1】 Android在加载或者处理超大巨型图片(x MB量级起步的图片)是一件非常需要小心谨慎的活儿,除了常规的OOM,其他需要处理的细节地方还很
阅读全文
摘要:Fresco是Facebook开源Android平台上一个强大的图片加载库,也是迄今为止Android平台上最强大的图片加载库。 优点:相对于其他开源的第三方图片加载库,Fresco拥有更好的内存管理和强大的功能,基本上能满足所有的日常使用场景。 缺点:整体比较大,不过目前的版本已做了拆分,你只需要
阅读全文
摘要:LogUtil.i("getPackageName()=" + getPackageName()); //Context类 LogUtil.i("getPackageName()=" + getPackageName()); //Context类 LogUtil.i("getClass().getN
阅读全文
摘要:简介 Android上最让人头疼的莫过于从网络获取图片、显示、回收,任何一个环节有问题都可能直接OOM,这个项目或许能帮到你。Universal Image Loader for Android的目的是为了实现异步的网络图片加载、缓存及显示,支持多线程异步加载。它最初来源于Fedor Vlasov的
阅读全文
摘要:Fresco简单的使用—SimpleDraweeView 百学须先立志—学前须知: 在我们平时加载图片(不管是下载还是加载本地图片…..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该呈现正在加载时的图像,当图片加载失败时应该呈现图片加载时的图像,当我们重新加载这张图片时,应该呈现重
阅读全文
摘要:转载请标明出处:http://blog.csdn.net/android_ls/article/details/53137867 Fresco是Facebook开源Android平台上一个强大的图片加载库,也是迄今为止Android平台上最强大的图片加载库。 优点:相对于其他开源的第三方图片加载库,
阅读全文
摘要:很多时候在应用安装初始化时,需要创建本地数据库,同时为数据库添加数据,之后再从数据库中读取数据。 这里有2个思路 1.先在本地创建一个能支持android使用的sqlite数据库文件,启动时,用现成的sqlite的二进制文件进行直接copy到Android系统的数据库路径 2.可以考虑在第一次启动时
阅读全文
摘要:前言 SQLite数据库操作在Android开发中非常常用 今天我将带大家全面了解关于SQLite数据库的操作(增、删、查、改) 目录 1. SQLite数据库介绍 SQLite是Android内置的一个小型、关系型、属于文本型的数据库。 Android提供了对 SQLite数据库的完全支持,应用程
阅读全文
摘要:一、如果只是设置选中状态的字体颜色,使用 tintColor 就可以达到效果 [objc] view plain copy self.tabBar.tintColor = [UIColor redColor]; [objc] view plain copy [objc] view plain cop
阅读全文
摘要:UILabel *Label = [[UILabel alloc] initWithFrame:CGRectMake(20, 300, 300, 30)]; NSMutableAttributedString *string = [[NSMutableAttributedString alloc]
阅读全文
摘要:目的 本文主要是分享iOS多线程的相关内容,为了更系统的讲解,将分为以下7个方面来展开描述。 多线程的基本概念 线程的状态与生命周期 多线程的四种解决方案:pthread,NSThread,GCD,NSOperation 线程安全问题 NSThread的使用 GCD的理解与使用 NSOperatio
阅读全文
摘要:基本定义: 程序:由代码生成的可执行应用。(例如QQ.app) 进程:一个正在运行的程序可以看做是一个进程。 (例如:正在运行的QQ 就是一个进程),进程拥有独立运行所需要的全部资源。 线程: 程序中独立运行的代码段。(例如: 接收QQ 消息的代码) 一个进程是由一个或者多个线程组成。进程只负责资源
阅读全文
摘要:我们在项目中,经常需要使用到自定义的view,而xib布局显得更为简洁,那么如何加载一个自定义的xib呢,网上的方法也很多很多,就是因为太多了,我经常会弄混,所以总结其中一个使用,如果以后使用到其他的在补充 O(∩_∩)O~~ 1.创建一个继承UIView的文件和xib,命名一样 2.设置view所
阅读全文
摘要:菜鸟一枚,大神勿喷。自己在牛刀小试的时候,发现系统的UIAlertView有点不喜欢,然后就自己自定义了一个UIAlertView,基本上实现了系统的UIAlertView,可以根据项目的需求修改UIAlertView的颜色。欢迎大神多多指导。不胜感激! 效果图: Paste_Image.png 直
阅读全文
摘要:iOS开发之蓝牙通讯 一、引言 蓝牙是设备近距离通信的一种方便手段,在iPhone引入蓝牙4.0后,设备之间的通讯变得更加简单。相关的蓝牙操作由专门的CoreBluetooth.framework进行统一管理。通过蓝牙进行通讯交互分为两方,一方为中心设备central,一方为外设peripheral
阅读全文
摘要:BabyBluetooth 是一个最简单易用的蓝牙库,基于CoreBluetooth的封装,并兼容ios和mac osx。 特色: 基于原生CoreBluetooth框架封装的轻量级的开源库,可以帮你更简单地使用CoreBluetooth API。 CoreBluetooth所有方法都是通过委托完成
阅读全文
摘要:再上一节说了app作为central连接peripheral的情况,这一节介绍如何使用app发布一个peripheral,给其他的central连接 还是这张图,central模式用的都是左边的类,而peripheral模式用的是右边的类 peripheral模式的流程 1. 打开periphera
阅读全文
摘要:上一篇文章介绍了蓝牙的技术知识,这里我们具体说明一下中心模式的应用场景。主设备(手机去扫描连接外设,发现外设服务和属性,操作服务和属性的应用。一般来说,外设(蓝牙设备,比如智能手环之类的东西), 会由硬件工程师开发好,并定义好设备提供的服务,每个服务对于的特征,每个特征的属性(只读,只写,通知等等)
阅读全文
摘要:蓝牙常见名称和缩写 MFI make for ipad ,iphone, itouch 专们为苹果设备制作的设备 BLE buletouch low energy,蓝牙4.0设备因为低耗电,所以也叫做BLE peripheral,central == 外设和中心,发起连接的时central,被连接的
阅读全文
摘要:CALayer 有一个属性叫做contents,这个属性的类型被定义为id,意味着它可以是任何类型的对象。在这种情况下,你可以给contents属性赋任何值,你的app仍然能够编译通过。但是,在实践中,如果你给contents赋的不是CGImage,那么你得到的图层将是空白的。 contents这个
阅读全文
摘要:1、nonnull:字面意思就能知道:不能为空(用来修饰属性,或者方法的参数,方法的返回值) 代码: 这样,你在使用以上方法的时候会出现这种效果提示 同样,使用属性的时候: 2、nullable:表示可以为空(使用方法和上面几乎一样,但是没有发现和上面类似的宏) 代码(大概看一下,参考上面就行了):
阅读全文
摘要:字典是以键值对的形式来存储数据 key value 1 NSDictionary 字典 1.1 创建字典,不可变的 1.2 快捷创建方式 1.3 字典中可以存任意数据类型 字典的顺序不是自然顺序 1.4 获得字典的长度 1.5 从字典中取值 1.6 遍历 取出所有的key值 枚举器 2 NSMuta
阅读全文
摘要:[objc] view plain copy // 十六进制转换为普通字符串的。 + (NSString *)stringFromHexString:(NSString *)hexString { // charchar *myBuffer = (charchar *)malloc((int)[he
阅读全文
摘要:最近项目中要用到socket通讯,由于涉及到组包问题,所以需要数据类型之间的来回转换,现在分享出来 如果想要请教Socket的问题请留言,我会随时回答的 1. int类型转16进制hexstring [objc] view plain copy //int 转16进制 - (NSString *)h
阅读全文
摘要:NSString* str_C; // 结果字符串NSString* str_A, str_B; //已存在的字符串,需要将str_A和str_B连接起来 //方法1 str_C = [NSString initWithFormat:@"%@,%@", str_A, str_B ]; //方法2 s
阅读全文
摘要:NSString* str=@"hello";//存在代码区,不可变 NSLog(@"%@",str); //1.【字符串插入】 NSMutableString* str1=[[NSMutableStringalloc]initWithString:@"hello"];//存在堆区,可变字符串 NS
阅读全文
摘要:NSString *string = @"123"; // 1.字符串转int int intString = [string intValue]; // 2.int装字符串 NSString *stringInt = [NSString stringWithFormat:@"%d",intStri
阅读全文
摘要:在iOS开发中,经常用到宏定义,或用const修饰一些数据类型,经常有开发者不知怎么正确使用,导致项目中乱用宏与const修饰 你能区分下面的吗?知道什么时候用吗? #define HSCoder @"汉斯哈哈哈" NSString *HSCoder = @"汉斯哈哈哈"; extern NSStr
阅读全文