12 2016 档案
摘要:1 const const是定义一个常量 2 volatile 代表定义一个变量,这个变量值可能在CPU指令之外被改变 volatile int a;//定义了一个volatile类型的int变量 通过volatile定义的变量,编译器不会自作聪明的去优化这个变量相关的代码 int a = 10;
阅读全文
摘要:1.定义方式 3.14这个就是一个浮点常量,3f是一个浮点类型的常量 float a;//定义了一个浮点类型的小数变量,名字叫a double b;//定义了一个double类型的变量,名字叫b long double c;//定义了一个long double类型的变量,名字叫c 2.printf输
阅读全文
摘要:1. char常量、变量 使用单引号‘’引起来的就是char的常量 ‘a’是一个char类型的常量 “a”是一个字符串类型的常量 1是一个int型的常量 ‘1’是一个char型的常量 char a; //定义了一个变量,类型是char,名字叫a char在内存中占用1个字节,c语言中没有BYTE类型
阅读全文
摘要:DJTabbarButton.m DJHomeViewController.m 最终效果:
阅读全文
摘要:1.有符号数和无符号数 有符号数就是最高位为符号位,0代表正数,1代表负数 无符号数最高位不是符号位,而就是数的一部分而已。 1011 1111 0000 1111 1111 0000 1011 1010,如果当有符号数看待,那么他是一个负数的补码,如果当一个无符号数看待,他就是一个正数的原码 无符
阅读全文
摘要:1. 原码 +7的原码是0000 0111 -7的原码是1000 0111 +0的原码是0000 0000 -0的原码是1000 0000 2. 反码 一个数如果值为正,那么反码和原码相同。 一个数如果为负,那么符号位为1,其他各位与原码相反 +7的反码0000 0111 -7的反码1111 100
阅读全文
摘要:1.二进制 一个位只能表示0或者1两种状态,简称bit(比特) 一个字节为8个二进制数,称为8位,简称BYTE(字节) 一个字为2个字节,简称WORD. 两个字为双字,简称DWORD,占32个bit 大写的B代表字节,小写的b代表比特 2.八进制 八进制为以8为基数的数制系统,C语言当中以0开头表示
阅读全文
摘要:常量就是在程序运行中不可变化的量。 #define #define MAX 100 定义了一个常量名字叫MAX,值是100,用#define定义的常量一般用大写字母. #define是一个预编译指令,在预编译阶段,被define定义的常量只是简单的做一个文本替换。 MAX = 10;这是错误的,常量
阅读全文
摘要:DJIconView.m DJTabBar.m QzoneHD.pch 最终效果: 横屏: 竖屏:
阅读全文
摘要:1. include 头文件包含 #include <stdio.h>这个是hello world程序的第一句话 # 代表预编译指令 #include的意思就是头文件包含,使用C语言库函数需要提前包含库函数对应的头文件。stdio.h这个文件在操作系统的系统目录下 include有两种写法 #inc
阅读全文
摘要:iOS9默认不支持HTTP请求,需要改用更安全的HTTPS(默认用TLS 1.2)。 但事实上,有些地方用HTTP比HTTPS更适合,而且把服务端升级到TLS 1.2也不是一时半会能够搞定的。幸好苹果还提供了配置,使得所有安全性更低的网络请求也能使用,解决方案就是在info.plist里面增加以下配
阅读全文
摘要:Safari 的书签多了,删除起来很麻烦,可以先选中所有书签,然后再按“Command+Delete”,就可以全部删除了。
阅读全文
摘要:1. 上不去网,看是否是无线网卡禁止。 2. 打开控制面板——网络和Internet——查看网络状态和任务——更改网络适配器 3. 4.若启用后无线网络连接仍为灰色,继续往下看 5.点击开始,找到运行,输入services.msc 点击确定(如果没找到运行,打开开始菜单——在右下角空白处鼠标单击右键
阅读全文
摘要:切换到C语言程序所有目录,执行cl test.c
阅读全文
摘要:“工具”-“选项”-“文本编辑器”-“C/C++”-"常规",勾选“行号”复选框。
阅读全文
摘要:DJHomeViewController.m 横屏: 竖屏:
阅读全文
摘要:- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event { UIViewController *vc = [[UIViewController alloc] init]; vc.view.backgrou
阅读全文
摘要:DJTestViewController.m DJColorTableViewController.h DJColorTableViewController.m UIPopoverController 需要掌握的其它要点: 1. 使popover里面的controller可以自行决定其宽高: 在本例
阅读全文
摘要:1、删掉工程中main.storyboard 后要删除plist文件中对应的键值,否则会报如下错误: Could not find a storyboard named 'Main' in bundle NSBundle 2、删除main.storyboard后,需要在AppDelegate.m中初
阅读全文
摘要:UIPopoverController 是iPad的专属API ViewController.m DJMenuViewController.m DJTestViewController.m Main.stroyboard 最终运行效果:
阅读全文
摘要:在Xcode5之前的版本中,Xcode在新建项目时,会要求为一个类指定一个前缀,这样方便我们区分相同名字的类。而从Xcode6开始,由于Swift增加了命名空间的关系,Xcode在新建项目时,不会再要求我们指定前缀,这样前缀就需要我们手动添加,如何使Xcode像之前一样在创建类时自动为我们添加前缀呢
阅读全文
摘要:1. 为什么要有Autoreszing? 在Xcode6之前,如果定义了下面的一个布局,同时运行在不同尺寸设备下会显示不同的效果。 (iPhone6-4.7inch) (iPhone5s-4inch) 可以看到,我们在4.7inch下的iPhone6上定义的布局跑在4inch下的iPhone5s上面
阅读全文
摘要:ViewController.m 最终效果:
阅读全文
摘要:Person.h Person.m main.m 运行结果:
阅读全文
摘要:1. 使用Xcode分析代码,分析分为静态分析及动态分析 静态分析:(Xcode-Product-Analyze) 检测代码是否有潜在的内存泄露 编译器认为不太合适的代码 运行结果: 若程序有未使用的变量,或编译器写法不合理,则分析结果会给出相应提示: 动态分析:(Xcode-Product
阅读全文
摘要:NSString+Extension.m 移除某个文件或文件夹: 最终效果:
阅读全文
摘要:1. 首先,打开source insight主界面。 2. 选择“options->key assignments",进入快捷键设置界面。 3. 此时,可以看到快捷键设置对话框。 4. 找到高亮的命令,可以看到默认的快捷键是Shift+F8. 点击“Assign new key”,分配新的快捷键。
阅读全文
摘要:很多应用在第一次加载时会读取前一次浏览的历史微博数据,只有当用户手动触发下拉刷新之后,才会去加载新的微博数据。 1.集成FMDB FMDB是在sqlite3的C语言查询函数基础上封装的一套OC的API,因此在使用之前需要首先导入libsqlite3.tbd. 2. 添加FMDB库 3. 参考代码:
阅读全文
摘要:/* 1. 创建一个数据表 */ CREATE TABLE IF NOT EXISTS t_dog (name text, age integer); CREATE TABLE IF NOT EXISTS t_cat (name,age); CREATE TABLE IF NOT EXISTS t_student (name text NOT NULL, age integer); CREATE...
阅读全文
摘要:1.下载Navicat Premium 11.0.16.dmg 已经放到百度网盘,里面有安装文件和注册机 下载链接: http://pan.baidu.com/s/1sjI64HZ 密码: 2h7q 2.安装步骤: 2.1打开下载的文件,把文件拖到应用程序 2.2打开core keygen.app(
阅读全文
摘要:iOS中的触摸事件总是由最顶层的View首先得到的,当这个View得到该触摸事件的时候可以选择通过 方法来决定是否由当前控件来消费掉触摸事件,YES代表由当前控件消费,事件则不再向下传递;No代表事件继续向下传递。与android里面的onTouchEvent返回布尔值类似。 当我们决定由当前控件来
阅读全文
摘要:触摸事件的传递机制: 首先是最外层的viewgroup接收到事件,然后调用会调用自己的dispatchTouchEvent方法。如果在ACTION_DOWN的时候dispatchTouchEvent返回false则后续的ACTION_MOVE和ACTION_UP都接收不到了,如果在ACTION_DO
阅读全文
摘要:DJStatus.m DJSpecialText.h DJStatusTextView.m 最终效果:
阅读全文
摘要:DJEmotionTool.h DJEmotionTool.m DJEmotionKeyboard.m DJStatus.m 最终效果:
阅读全文
摘要:使用ImageView会遇到的问题 在Android应用中,都少不了图片的显示,ImageView,轮播图,ViewPager等等,很多都是来显示图片的,很多时候,我们都希望图片能够在宽度上填充父窗体,这样比较符合人的审美观点,但是问题就随之而来了,那就是高度如何定义??先来看一个普通的ImageV
阅读全文
摘要:创建一个自定义组件,继承 ImageView。在我的 xml 布局文件中是这样设置的: 如何在 Mycomponent 的 constructor 里创建一个 Bitmap类? 首先想查看 ImageView 的源代码,但是 它是Android的内部代码,我们无法这样使用。 后来发现有2种解决方案。
阅读全文
摘要:方法有两种一: DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); 二: DisplayMetrics metrics = getReso
阅读全文
摘要:DJStatusPart.h DJStatus.m 最终效果:
阅读全文
摘要:DJStatus.h DJStatus.m DJStatusCell.m 集成RegexKitLite框架 1. 添加RegexKitLite的库文件到项目: 2. 如果此时执行Command+B编译,Xcode会报错: 3. 错误的原因是RegexKitLite框架是非ARC的代码,因此我们需要在
阅读全文
摘要:今天的任务就是详细研究一下protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec)方法。如果只是说要重写什么方法有什么用的话,还是不太清楚。先去源码中看看为什么要重写onMeasure()方法,这个方法是在哪里调用的:
阅读全文
摘要:安全提醒 您的应用静态链接到的 OpenSSL 版本有多个安全漏洞。建议您尽快更新 OpenSSL。 在开头为 1.0.1h、1.0.0m和 0.9.8za的 OpenSSL 版本中这些漏洞已得到修复。要确认您的 OpenSSL版本,您可以执行grep命令 ("$ unzip -p YourApp.
阅读全文
摘要:一直很喜欢Google Camera的自动对焦效果,今日闲来无事,自己做了个: 废话不多说,代码才是王道: attrs.xml activity.main.xml 代码很简单,注释已经写得很详细了,相信大家都能看得懂。 最终效果:
阅读全文
摘要:DJConstantValue.h DJConstantValue.m
阅读全文
摘要:那么还是针对我们之前写的自定义控件:开关按钮为例来说,在之前的基础上,我们来看看有哪些属性是可以自定义的:按钮的背景图片,按钮的滑块图片,和按钮的状态(是开还是关),实际上都应该是可以在xml文件中直接定义的。 不妨先来看看之前我们在代码中不依靠自定义属性的时候,是如何写的,我们可以在initVie
阅读全文
摘要:设计思路:每当用户点击一个表情,就将该表情(DJEmotion)存储到沙盒,当用户切换到“最近”栏目时,从沙盒中取出用户最近点击的表情列表,进行显示。 1. 保存DJEmotion DJEmotion.h DJEmotion.m 2. 将表情存储到沙盒中的工具类 DJEmotionTool.h DJ
阅读全文
摘要:今天做项目的时候,发现当edittext 的InputType为password时,它的字体和原来不一样: 网上找了一下,给出了解决办法: 第一: 去掉xml文件中的password配置,在代码中编写(经本人测试,确实有效) 第二: 也可以用以下2个方法解决: 值得一提的是,手头还有一部三星S6,用
阅读全文
摘要:DJEmotionPageView.m DJEmotionPopView.h DJEmotionPopView.m 最终效果:
阅读全文
摘要:错误描述: Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 21 beyond bounds [0 .. 20]' 分析“in
阅读全文
摘要:DJEmotionTextView 转换方法 DJEmotionAttachment.h DJEmotionAttachment.m 最终效果: 待发送的文本为:
阅读全文
摘要:UITextView+Extension.h UITextView+Extension.m DJEmotionTextView.m
阅读全文
摘要:DJComposePageView.m DJComposeViewController.m 最终效果:
阅读全文
摘要:DJEmotionPageView.m 最终效果:
阅读全文
摘要:DJEmotionPageView.m DJComposeViewControll.m DJEmotionTextView.m 最终效果:
阅读全文
摘要:前言 如果你的App支持多语言,你需要正确的管理你的翻译字符串资源。Android Studio提供了翻译编辑器使更容易的查看和管理翻译资源。 关于翻译编辑器 翻译资源存储工程的多个目录下的多个XML文件中。手动的查找和编辑这些跨多语言翻译的文件是很困难的。因此,你应用可能会已经在编译完且发布给用户
阅读全文