YoferZhang 的博客

数学出身,功底扎实,热爱编程,虽然编程起步晚,但是冲劲十足。


  • 索引 | Index

  • 关于 | About

  • 标签 | tags

  • 分类 | categories

  • 归档 | Archives

【iOS】cocos2dx在xcode8 GM版下的错误`libpng error:CgBI:unhandled critical chunk`

发表于 2016-09-09 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

XCode 8 GM 版本编译 cocos2dx的代码,在加载 sprite 时,比如

1
sprite->setPosition(Vec2(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));

会弹出错误:

1
2
3
libpng error: CgBI: unhandled critical chunk
libpng error: CgBI: unhandled critical chunk
libpng error: CgBI: unhandled critical chunk
阅读全文 »

【iOS】Core Animation Programming Guide 核心动画编程指南

发表于 2016-09-05 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

1 有关核心动画

![](http://ww2.sinaimg.cn/mw690/a9c4d5f6gw1f7ihw01x5dj20eo0auaay.jpg)
阅读全文 »

【iOS】View Programming Guide for iOS 视图编程指南

发表于 2016-09-02 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

1 有关 Windows and Views

每个应用都至少有一个 window 和一个 view。

1.1 添加额外的 Window

一般在有外界显示设备的时候才需要添加额外的 window

下面的代码举了一个例子,这里假定对象实现了方法 externalWindow,externalWindow 存储一个 window 的引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
- (void)configureExternalDisplayAndShowWithContent:(UIViewController*)rootVC
{
// Configure the content only if a second screen is available.
if ([[UIScreen screens] count] > 1) {
UIScreen* externalScreen = [[UIScreen screens] objectAtIndex:1];
CGRect screenBounds = externalScreen.bounds;

// Configure the window
self.externalWindow = [[UIWindow alloc] initWithFrame:screenBounds];
self.externalWindow.windowLevel = UIWindowLevelNormal;
self.externalWindow.screen = externalScreen;

// Install the root view controller
self.externalWindow.rootViewController = rootVC;

// Show the window, but do not make it key.
self.externalWindow.hidden = NO;
}
else {
// No external display available for configuration.
}
}
阅读全文 »

【iOS】KVO编程指南,Key-Value Observing Programming Guide翻译

发表于 2016-08-31 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创翻译,如需转载请注明出处。

1 Introduction to Key-Value Observing Programming Guide - KVO编程指南介绍

Key-value observing is a mechanism that allows objects to be notified of changes to specified properties of other objects.

键 - 值观察是一种机制,当指定对象属性改变的时候允许另一个对象接受通知。

Important: In order to understand key-value observing, you must first understand key-value coding.

重要:了解键值观察之前,首先要理解键值编程 (key-value coding)

阅读全文 »

【iOS】iOS并发编程对比总结,NSThread,NSOperation,GCD

发表于 2016-08-30 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

1. 多线程概念

进程

  • 正在进行中的程序被称为进程,负责程序运行的内存分配
  • 每一个进程都有自己独立的虚拟内存空间

线程

  • 线程是进程中一个独立的执行路径(控制单元)
  • 一个进程中至少包含一条线程,即主线程
  • 可以将耗时的执行路径(如:网络请求)放在其他线程中执行

创建线程的目的就是为了开启一条新的执行路径,运行指定的代码,与主线程中的代码实现同时运行

![](http://ww2.sinaimg.cn/mw690/a9c4d5f6gw1f7bzfmbtm6j210d09eq7t.jpg)
阅读全文 »

【iOS】property属性的weak,strong,copy,assign

发表于 2016-08-25 | 分类于 iOS | 0 Comments
@property属性的用法 weak(assign) : 代理\UI控件 strong(retain) : 其他对象(除代理\UI控件\字符串以外的对象) copy : 字符串 assign : 非对象类型(基本数据类型int\float\BOOL\枚举\结构体)
阅读全文 »

【iOS】私人通讯录Demo

发表于 2016-08-24 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

Github地址:PersonalContacts

私人通讯录

写在前面

本 Demo 简单演示了一些小控件的应用。

  • 比如导航栏的设置;
  • 界面全部是代码写的,没有用stroyboard。
  • UITextField,UILabel,UIButton等小控件的精确控制;
  • 页面之间的数据传输;
  • 数据的本地化存储;
  • UITableView 的添加删除Cell
  • 在系统提供样式的Cell中代码添加自定义View
  • 利用第三方控件模拟网络请求等待,就是转菊花
阅读全文 »

【iOS】Cocoapods 安装

发表于 2016-08-23 | 更新于 2018-06-06 | 分类于 iOS | 0 Comments
先看 cocoapods:安装/更新Ruby环境教程 将ruby更新到2.2.0以上,因为cocoapods要求 然后再看 iOS开发之Cocoapods 安装cocoapods
阅读全文 »

【iOS】UIKit继承结构

发表于 2016-08-21 | 更新于 2018-06-06 | 分类于 iOS | 0 Comments
![](http://ww1.sinaimg.cn/large/a9c4d5f6gw1f71p8jxat6j20o90w77fk.jpg)
阅读全文 »

【iOS】iOS控制器管理,代码,xib,Storyboard,Segue

发表于 2016-08-21 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

控制器的创建

如何创建一个控制器

控制器常见的创建方式有以下几种

  • 通过storyboard创建

  • 直接创建

1
ViewController *viewController = [[ViewController alloc] init];
  • 指定xib文件来创建
1
ViewController *viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
阅读全文 »

【iOS】iOS程序启动过程,原理,UIApplication,代码启动界面

发表于 2016-08-21 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

项目中常见文件

Info.plist常见的设置

建立一个工程后,会在Supporting files文件夹下看到一个“Info.plist”的文件,该文件对工程做一些运行期的配置,非常重要,不能删除

项目中其他Plist文件不能带有“Info”这个字眼,不然会被错认为是传说中非常重要的“Info.plist”

Info.plist

常见属性(红色部分是用文本编辑器打开时看到的key)

  • Localiztion native development region(CFBundleDevelopmentRegion)-本地化相关
  • Bundle display name(CFBundleDisplayName)-程序安装后显示的名称,限制在10-12个字符,如果超出,将被显示缩写名称
  • Icon file(CFBundleIconFile)-app图标名称,一般为Icon.png
  • Bundle version(CFBundleVersion)-应用程序的版本号,每次往App Store上发布一个新版本时,需要增加这个版本号
  • Main storyboard file base name(NSMainStoryboardFile)-主storyboard文件的名称
  • Bundle identifier(CFBundleIdentifier)-项目的唯一标识,部署到真机时用到
阅读全文 »

【iOS】Xcode插件管理工具Alcatraz,常用插件介绍

发表于 2016-08-17 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

Alcatraz

Alcatraz 工具可以在Xcode下安装管理插件,官网 - Alcatraz

命令行安装

1
curl -fsSL https://raw.githubusercontent.com/supermarin/Alcatraz/deploy/Scripts/install.sh | sh

安装完成重启Xcode之后,就会在 Window 选项下看到 Package Manager:

![](http://ww4.sinaimg.cn/mw690/a9c4d5f6gw1f6wgxx0pswj20ms0e2gpd.jpg)
阅读全文 »

【iOS】Notification通知,通知中心,发布通知,通知代理对比

发表于 2016-08-16 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

通知

对象之间标准的信息传递方式:一个对象调用另一个对象的方法。这要求发送消息的对象知道谁接收消息,消息的响应是什么。但是比如两个独立的子系统,没有耦合关系,就需要另一种形式,通知 Notification

阅读全文 »

【iOS】视图控制器编程指南View Controller Programming Guide for iOS

发表于 2016-08-16 | 更新于 2017-02-09 | 分类于 iOS | 0 Comments

版权声明:本文为博主原创,如需转载请注明出处。

官方文档地址

OverView 简介

The Role of View Controllers - 视图控制器的作用

视图控制器是应用程序的内部结构的基础。每个应用程序都至少有一个视图控制器,并且大多数的应用程序有几个。每个视图控制器管理应用程序用户界面的一部分以及接口和底层数据之间的交互。视图控制器也便于用户界面的不同部分之间的转换。

因为他们在你的应用程序中扮演着重要的角色,视图控制器几乎在你所做的一切的中心。UIViewController 类定义的方法和属性来管理您的视图,处理事件,从一个视图控制器转换到另一个,并协调您的应用程序的其他部分。创建一个UIViewController 的子类并添加你需要实现你的应用程序行为的自定义代码。

阅读全文 »

【iOS】UIButton,UIScrollView,UITableView常见属性,使用案例

发表于 2016-08-14 | 更新于 2018-06-06 | 0 Comments

IBAction:
1> 能保证方法可以连线
2> 相当于void

IBOutlet:
1> 能保证属性可以连线

阅读全文 »
1…456…8
Yofer Zhang

Yofer Zhang

接下来自己能够坚持写博客,记录是一个好习惯

113 日志
7 分类
127 标签
RSS
GitHub E-Mail Google StackOverflow Instagram
Links
  • WeChat
  • LinkedIn
© 2019 Yofer Zhang
由 Hexo 强力驱动 v3.2.0
|
主题 – NexT.Pisces v6.4.0