自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

江月夜

人生就是酱紫,开心了笑,伤心了哭……

  • 博客(75)
  • 资源 (2)
  • 收藏
  • 关注

原创 navigationBar相关设置(透明度、去掉下方黑线)

去除navigationBar下方黑线// 去掉navigationBar下方的黑线 [self.navigationBar setBackgroundImage:[UIImage new] forBarMetrics:UIBarMetricsDefault]; self.navigationBar.barStyle = UIBarStyleDefault; self.nav

2016-10-25 17:41:13 1861

原创 根据生日计算星座(Objective-C)

传入字符串/** 根据生日计算星座 @param birthday 生日 eg:2016-10-25 @return 星座 */-(NSString *)getAstroWithBirthday:(NSString *)birthday{ //出生月 int month = [[[birthday componentsSeparatedByString:@"-"] obje

2016-10-25 14:51:23 723

原创 禅与 Objective-C 编程艺术

禅与 Objective-C 编程艺术 (Zen and the Art of the Objective-C Craftsmanship 中文翻译)原文 https://github.com/objc-zen/objc-zen-bookGitbook 链接(包含 PDF, mobi, epub 格式): http://yourtion.gitbooks.io/objc-zen-book-cn/

2016-04-14 14:45:19 2050

转载 iOS打包ipa的几种方式

转载  编程小翁@博客园,邮件[email protected],微信Jilon 总结一下,目前.app包转为.ipa包的方法有以下几种:1、Apple推荐的方式,即实用xcode的archive功能Xcode菜单栏->Product->Archive->三选一,一般选后两个。局限性:个人开发一般采用这种方法,但是当一个证书多人使用时就稍显麻烦。一般多人开发时都是采用

2016-04-13 15:19:45 932

原创 [iOS]数据库第三方框架FMDB详细讲解

[iOS]数据库第三方框架FMDB详细讲解初识FMDBiOS中原生的SQLite API在进行数据存储的时候,需要使用C语言中的函数,操作比较麻烦。于是,就出现了一系列将SQLite API进行封装的库,例如FMDB、PlausibleDatabase、sqlitepersistentobjects等。FMDB是一款简洁、易用的封装库。因此,在这里推荐使用第三方框架FMDB

2015-09-28 21:21:10 1251

转载 TCP、UDP、IP 协议分析

互连网早期的时候,主机间的互连使用的是NCP协议。这种协议本身有很多缺陷,如:不能互连不同的主机,不能互连不同的操作系统,没有纠错功能。为了改善这种缺点,大牛弄出了TCP/IP协议。现在几乎所有的操作系统都实现了TCP/IP协议栈。TCP/IP协议栈主要分为四层:应用层、传输层、网络层、数据链路层,每层都有相应的协议,如下图所谓的协议就是双方进行数据传输的一种格式。

2015-09-27 17:58:36 846

转载 AutoLayout(自动布局)入门

AutoLayout是什么?使用一句Apple的官方定义的话AutoLayout是一种基于约束的,描述性的布局系统。 Auto Layout Is a Constraint-Based, Descriptive Layout System.关键词:基于约束 - 和以往定义frame的位置和尺寸不同,AutoLayout的位置确定是以所谓相对位置的约束来定

2015-09-18 21:13:09 350

转载 iOS 各种控件默认高度(图示)

1.状态栏状态栏一般高度为20像素,在打手机或者显示消息时会放大到40像素高,注意,两倍高度的状态栏在好像只能在纵向的模式下使用。如下图用户可以隐藏状态栏,也可以将状态栏设置为灰色,黑色或者半透明的黑色。如果需要隐藏状态栏可以使用调用:[[UIApplication sharedApplication] setStatusBarHidden:YES animat

2015-09-11 14:07:59 317

原创 Xcode的 发展史

Xcode的 发展史:(史蒂夫·乔布斯:1985离职—1997年二入苹果)1998年8月,iMac正式发售,售价1299美元,上市6个星期后就售出27.8万台,到年底售出了80万台——成为苹果公司历史上销售速度最快的计算机。最值得注意的是,32%的购买者是首次购买计算机,12%的购买者曾经使用的是Windows计算机。2001年5月19日,第一家苹果零售店在弗吉尼亚州的泰森角(Tyson-sCome

2015-09-10 14:08:16 1032

原创 ScrollView 高度

ScrollView 上面 添加 UIView 定下 View 的约束选择水平滑动还是竖直滑动(可以直接看前面的图标,是竖着的线还是横着的线)可以将view 的高度拖成属性#import @interface ViewController : UIViewController@property (strong, nonatomic) IBOutlet NSLa

2015-09-08 21:36:25 871

原创 Swift OC 混编

首先搜索 “pack” 将 Defines Module 选中为 YES 是为了将OC文件编译成-Swift.h文件 下面的Product Module Name 可能不是工程名,选中重新修改一次 注意:下方选中区域中必须都是工程名

2015-09-08 21:08:21 502

原创 通知中心

通知中心 (先注册观察者,后发送通知)- (IBAction)buttonDidClicked:(UIButton *)sender { SecondViewController *secondVC = [[SecondViewController alloc] init]; [self.navigationController pushViewController:secondVC

2015-09-01 19:39:21 423

原创 观察者KVO

实观察者的回调方法现- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{ // 根据观察的内容拿到图片 UIImage *image = [change objectForKey:NSK

2015-09-01 19:36:05 306

原创 第三方加载图片

#import "TableViewCell.h"#import "ImageModal.h"// 下载图片(MRC)#import "UIImageView+WebCache.h"@implementation TableViewCell#pragma mark - 给cell赋值方法- (void)setCellModal:(ImageModal *)modal{ //

2015-09-01 19:34:34 313

原创 第三方加载图片

#import "TableViewCell.h"#import "ImageModal.h"// 下载图片(MRC)#import "UIImageView+WebCache.h"@implementation TableViewCell#pragma mark - 给cell赋值方法- (void)setCellModal:(ImageModal *)modal{ //

2015-09-01 19:33:24 301

原创 多线程

程序:由源代码生成的可执行应用。(例如:QQ.app) 进程:一个正在运行的程序可以看做⼀个进程。(例如:正在运⾏的QQ就是一个进程),进程拥有独⽴立运⾏行所需的全部资源。线程:程序中独⽴立运⾏行的代码段。(例如:接收QQ消息的代码) 一个进程是由一或多个线程组成。进程只负责资源的调度和分配,线程才是程序真正的执⾏行单元,负责代码的执⾏行。进程是分配资源的最小单位,线程是执行的最小单位死锁

2015-07-29 20:26:09 484

原创 iOS_NSNotificationCenter(通知中心简单建立)

通知中心 (先注册观察者,后发送通知)- (IBAction)buttonDidClicked:(UIButton *)sender { SecondViewController *secondVC = [[SecondViewController alloc] init]; [self.navigationController pushViewController:secondVC

2015-07-22 19:00:18 1023

原创 iOS_网络请求_代理方式

#pragma mark - 网络请求代理方式(异步)- (IBAction)DelegateButtonDidClicked:(UIButton *)sender { // 1、拼接 urlString,网址里面必须写 http:// NSString *urlString = @"http://ipad-bjwb.bjd.com.cn/DigitalPublication/pub

2015-07-21 17:40:50 1559

原创 iOS_POST_网络请求

同步的 post 请求#pragma mark - 同步的 post 请求- (IBAction)POSTSynButtonDidClicked:(UIButton *)sender { // 1、拼接 baseUrlString NSString *baseUrlString = @"http://ipad-bjwb.bjd.com.cn/DigitalPublication/pu

2015-07-21 17:30:50 2044

原创 iOS_GET_网络请求

同步的 get 请求#pragma mark - 同步的 get 请求- (IBAction)GETSynButtonDidClicked:(UIButton *)sender { // 1、网址里面必须写 http:// NSString *urlString = @"http://ipad-bjwb.bjd.com.cn/DigitalPublication/publish/Ha

2015-07-21 17:27:12 891

原创 JSON 数据的 JSONKit 解析

@property (nonatomic, strong) NSMutableArray *JSONArray;懒加载- (NSMutableArray *)JSONArray{ if (_JSONArray == nil) { self.JSONArray = [NSMutableArray array]; } return _JSONArray;}-

2015-07-20 17:35:11 643

原创 JSON 数据的系统解析

- (IBAction)jsonSystemButtonDidClicked:(UIButton *)sender { self.JSONArray = [NSMutableArray array]; // 1、拿到 json 文件的路径 NSString *path = [[NSBundle mainBundle] pathForResource:@"student" ofTy

2015-07-20 17:03:33 541

原创 xml 数据的 DOM 解析方式

需要使用第三方工具#import "GDataXMLNode.h"@property (nonatomic, strong) NSMutableArray *xmlDOMArray;- (IBAction)XMLDOMButtonDidClicked:(UIButton *)sender { // 1、拿到 xml 文件的路径 NSString *path = [[NSBundle

2015-07-20 16:58:49 647

原创 XML数据结构 SAX 解析

SAX解析 SAX:Simple API for XML。基于事件驱动的解析⽅方式,逐⾏行解析 数据。(采⽤用协议回调机制)NSXMLParser类 NSXMLParser是iOS⾃自带的XML解析类。采⽤用SAX⽅方式解析数据。 解析过程由NSXMLParserDelegate协议⽅方法回调 解析过程:开始标签->取值->结束标签->取值<?xml version = "1.0" en

2015-07-20 13:50:40 838

原创 UI_cell 注册问题

'NSInternalInconsistencyException', reason: 'unable to dequeue a cell with identifier ActiveListCell - must register a nib or a class for the identifier or connect a prototype cell in a storyboard'

2015-07-18 17:57:06 642

原创 UI_storyboard实现页面回调

新建类 注意继承关系#import <UIKit/UIKit.h>@interface CustomPopIt : UIStoryboardSegue@end#import "CustomPopIt.h"@implementation CustomPopIt#pragma mark - 实现 pop 方法- (void)perform{ UIViewController *vc = se

2015-07-17 17:42:48 489

原创 UI_Block传值

block 传值在第二个控制器里面声明block// 类似代理的协议typedef void(^TransmitValueBlock) (NSString *);@interface SecondViewController : UIViewController// 类似代理的定义@property (nonatomic, copy) TransmitValueBlock ablock;// 可

2015-07-16 17:55:27 780

原创 UI_UITabBarController

建立控制器 // 普通控制器 GroupViewController *groupVC = [[GroupViewController alloc] init]; SecondViewController *secondVC = [[SecondViewController alloc] init]; ThirdViewController *thirdVC = [[T

2015-07-16 14:26:17 602

原创 UI_UIImagePickerController(读取图片)

创建图片#pragma mark - 创建 photoImageView- (void)createphotoImageView{ self.photoImageView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 70, 320, 390)]; self.photoImageView.backgroundColor =

2015-07-15 15:47:27 529

原创 UI_UItableView_AutoCell(自定义cell 高度)

#pragma mark 赋值方法-(void)setCellDataWithModel:(NewsModel *)sender{ self.titleLabel.text = sender.title; self.summaryLabel.text = sender.summary; CGFloat height = [NewsCell getHeight

2015-07-14 20:31:52 704

原创 UI_UItableView_AutoCell(自定义cell)

新建类@interface YadongCell : UITableViewCell方法#pragma mark - 赋值方法- (void)setCellDateWithYadong:(CinemaModel *)sender;#pragma mark - 自定义高度+(CGFloat)height;#pragma mark - 封装+ (instancetype)getYadongCellW

2015-07-13 22:16:57 739

原创 UI_Singleton(单例传值)

新建一个类继承 NSObject#import <Foundation/Foundation.h>@interface FinxingDate : NSObject#pragma mark - 创建单例方法// 作为返回值的区别 id(泛型指针) 不知道具体对象 instancetype可以动态识别哪种类型// 起名习惯,share + 类名//+ (ShareData *)+ (insta

2015-07-13 19:13:26 657

原创 UI_UITableView编辑

向左滑动#pragma mark - 设置 tableView 能否编辑- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{ return YES;}#pragma mark - 左滑动哪种编辑状态- (UITableViewCellEditingStyle

2015-07-11 14:23:19 622

原创 UI_模态页面跳转

前一页建立跳转事件 // 添加左边导航栏按钮 UIBarButtonItem *leftButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(leftButtonAction:)]; self.navig

2015-07-11 10:43:31 1108

原创 UI_UITableView_搭建

创建 tableViewUITableViewStyle 有两种选择#pragma mark - 创建 tableView- (void)createTableView{ // 枚举类型共有两个 self.mainTableView = [[UITableView alloc] initWithFrame:[UIScreen mainScreen].bounds style:UI

2015-07-09 19:10:11 620

原创 Xcode中 .pch文件

创建 配置

2015-07-09 15:23:12 486

原创 UI_KVC赋值

使用KVC对person的属性进行赋值 [aperson setValue:@"yadong" forKey:@"name"]; [aperson setValue:@"man" forKey:@"sex"]; [aperson setValue:@23 forKey:@"age"]; NSLog(@"%@",[aperson valueForKey:@"name

2015-07-09 15:12:17 665

原创 UI_页面传值问题

属性传值 // 属性传值:最常用的一种传值方式 /** * 操作过程 * 1、在第二个控制器的.h文件里面书写属性 * 2、就在第一个页面创建第二个页面控制器方法里面,进行赋值操作 * 3、适用性(局限性):仅仅适用于从第一个页面传到第二个页面(从前往后传) */*1、在第二个控制器的.h文件里面书写属性// 设置属性用于传

2015-07-08 21:20:47 743

原创 UI_UINavigationController

创建 UINavigationController(导航控制器)在AppDelegate.m中创建 // 创建一个普通控制器 RootViewController *rootVC = [[RootViewController alloc] init]; // UINavigationController主要用来管理一组控制器(至少有一个),自带 view 但是不使用 UI

2015-07-08 21:00:27 578

转载 Xcode的debug调试

程序员日常开发中有大量时间都会花费在 debug 上,从事 iOS 开发不可避免地需要使用 Xcode。这篇博客就主要介绍了 Xcode 中几种能够大幅提升代码调试效率的方式。“If debugging is the process of removing bugs, then programming must be the process of putting them in.” ——Edsge

2015-07-07 22:45:23 729

mac 系统使用

本书教你玩转苹果电脑上的 Dock、Spotlight、Mission Control、Launchpad 等工具,将自己的苹果电 脑功能发挥到极致。书中介绍的很多小窍门和技巧甚至从未正式公开过。 本书面向苹果电脑爱好者、IT 从业人员、专业设计师、动画设计师、商务人士,等等

2015-05-31

C语言上机实验

C语言课本上机实验报告,以word文档的形式。其中包含共共八个实验项目。包含函数、数组、指针、链表、文件等。

2012-08-19

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除