注册 登录
主题 : iphone开发笔记和技巧总结
级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
0 楼:  发表于: 2011-09-06 15:04    发自: Web Page
来源于 显示问题 分类

iphone开发笔记和技巧总结   

管理提醒: 本帖被 下雨天、轮滑 执行加亮操作(2012-07-13)
iphone程序中实现截屏的一种方法
在iphone程序中实现截屏的一种方法:
//导入头文件
#import QuartzCore/QuartzCore.h
//将整个self.view大小的图层形式创建一张图片image UIGraphicsBeginImageContext(self.view.bounds.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage*image=UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
//然后将该图片保存到图片图
UIImageWriteToSavedPhotosAlbum(image,self,nil,nil);

[ 此帖被haoxue在2011-09-17 08:29重新编辑 ]

级别: 精灵王

状态: 连续签到 - [6天]
UID: 28879
精华: 0
发帖: 664
可可豆: 6721 CB
威望: 5748 点
在线时间: 965(时)
注册时间: 2010-08-27
最后登录: 2017-09-21
1 楼:  发表于: 2011-09-06 15:18    发自: Web Page

[ 此帖被sai373100489在2011-09-06 15:23重新编辑 ]

fangyp116@gmail.com
级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
2 楼:  发表于: 2011-09-06 16:58    发自: Web Page
Objective-C 画图


1.颜色和字体
     UIKit提供了UIColor和UIFont类来进行设置颜色和字体,
     UIColor *redColor=【UIColor redColor】;
    【redColor set】;//设置为红色
     UIFont *front=【UIFont systemFontOfSize:14.0】;//获得系统字体
    【myLable setFont:font】;//设置文本对象的字体
 2.drawRect方法
     对于画图,你首先需要重载drawRect方法,然后调用setNeedsDisplay方法让系统画图:
    -(void)drawRect:(CGRect)rect;//在rect指定的区域画图

     -(void)setNeedsDisplay;//让系统调用drawRect画图


级别: 圣骑士

状态: 连续签到 - [1天]
UID: 17045
精华: 0
发帖: 405
可可豆: 2691 CB
威望: 2658 点
在线时间: 321(时)
注册时间: 2010-04-08
最后登录: 2017-03-09
3 楼:  发表于: 2011-09-06 17:03    发自: Web Page
要直播吗
级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
4 楼:  发表于: 2011-09-15 15:39    发自: Web Page
延时函数和Timer的使用
延时函数:
[NSThread sleepForTimeInterval:5.0]; //暂停5s.


Timer的使用:
NSTimer *connectionTimer;  //timer对象


//实例化timer
self.connectionTimer=[NSTimerscheduledTimerWithTimeInterval:1.5 target:selfselector:@selector(timerFired:) userInfo:nil repeats:NO];
[[NSRunLoop currentRunLoop]addTimer:self.connectionTimer forMode:NSDefaultRunLoopMode];
//用timer作为延时的一种方法  
do{
[[NSRunLoopcurrentRunLoop]runUntilDate:[NSDatedateWithTimeIntervalSinceNow:1.0]];
}while(!done); 




//timer调用函数
-(void)timerFired:(NSTimer *)timer{
done =YES;
}


                                
[ 此帖被haoxue在2011-09-15 15:58重新编辑 ]

级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
5 楼:  发表于: 2011-09-15 15:53    发自: Web Page
启动界面的制作

iPhone开发实现splash画面非常简单,做一个全屏的欢迎页的图片,把它命名为Default.png,然后放在Xcode工程的Resource里面。
在XXXAppDelegate.m程序中,插入如下代码:
(BOOL)application:(UIApplication*)application
didFinishLaunchingWithOp
tions:(NSDictionary *)launchOptions {
 
//–inserta delay of 5 seconds before the splash screendisappears–
 
[NSThread sleepForTimeInterval:5.0];
 
//Override point for customization after applicationlaunch.
 
//Add the view controller’s view to the window anddisplay.
 
[windowaddSubview:viewController.view];
 
[windowmakeKeyAndVisible];
 
return YES;
}

这样splash页面就停留5秒后,消失了。


级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
6 楼:  发表于: 2011-09-15 15:56    发自: Web Page
关于控制器Controller的思考
iPhone开发中,只有一个窗口,对应的是多个视图,而视图的组织形式各种各样,关键是要靠控制器来组织各个视图的逻辑关系。大体的关系如下:


窗体---主控制器(比如说导航控制器),主控制器在窗体里面,拖动过去即可,在AppDelegate中写相关变量的代码---在主控制器下有别的控制器,比如视图控制器,可以通过interfacebuilder来关联根视图什么的----视图控制器相当于一个根视图,可以调用其他的视图---视图中包含类文件(.h,.m)和图形界面文件(.xib)(两个之间必须关联起来。)



级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
7 楼:  发表于: 2011-09-15 15:57    发自: Web Page
翻页效果
经常看到iPhone的软件向上向下翻页面的效果,其实这个很简单,已经有封装好的相关方法处理。
//首先设置动画的相关参数
[UIView beginAnimations:@"Curl"context:nil];
[UIView setAnimationDuration:1.25]; //时间
[UIViewsetAnimationCurve:UIViewAnimationCurveEaseInOut];//速度
//然后设置动画的动作和目标视图
[UIViewsetAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.view cache:YES];
参数UIViewAnimationTransitionCurlUp代表向上翻页,如果向下的话UIViewAnimationTransitionCurlDown.
forView那把当前的视图传进去。
//最后提交动画
[UIView commitAnimations];



[ 此帖被haoxue在2012-02-21 09:49重新编辑 ]

级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
8 楼:  发表于: 2011-09-15 16:00    发自: Web Page
自定义按钮

UIButton *Btn;
CGRect frame;      
 Btn = [[UIButton buttonWithType:UIButtonTypeCustom] retain]; //按钮的类型   
    [Btn setImage:[UIImage imageNamed:@“aaa.png”] forState:UIControlStateNormal];//设置按钮图片 
  Btn.tag = 10;
   frame.size.width = 59;  //设置按钮的宽度 
  frame.size.height = 59;   //设置按钮的高度     
  frame.origin.x =150;   //设置按钮的位置    
   frame.origin.y =260;      
 [Btn setFrame:frame];    
   [Btn setBackgroundColor:[UIColor clearColor]];     
    [Btn addTarget:self action:@selector(btnPressed:)forControlEvents:UIControlEventTouchUpInside];   //按钮的单击事件    
   [self.view addSubview:Btn];     
    [Btn release];
-(void)btnPressed:(id)sender {
    //在这里实现按钮的单击事件
}

[ 此帖被haoxue在2011-11-30 09:46重新编辑 ]

级别: 精灵王
状态: 连续签到 - [2天]
UID: 39045
精华: 0
发帖: 1386
可可豆: 12975 CB
威望: 12975 点
在线时间: 872(时)
注册时间: 2010-11-21
最后登录: 2017-09-25
9 楼:  发表于: 2011-09-15 16:06    发自: Web Page
截取屏幕图片
//创建一个基于位图的图形上下文并指定大小为CGSizeMake(200,400)
UIGraphicsBeginImageContext(CGSizeMake(200,400));

//renderInContext 呈现接受者及其子范围到指定的上下文

[self.view.layerrenderInContext:UIGraphicsGetCurrentContext()];
  
 //返回一个基于当前图形上下文的图片
 UIImage *aImage =UIGraphicsGetImageFromCurrentImageContext();
 
 //移除栈顶的基于当前位图的图形上下文
UIGraphicsEndImageContext();

//以png格式返回指定图片的数据

imageData = UIImagePNGRepresentation(aImage);

描述
快速回复

关注本帖(如果有新回复会站内信通知您)

发帖、回帖都会得到可观的积分奖励。查看论坛积分规则

按"Ctrl+Enter"直接提交
    顶部