`
caiwb1990
  • 浏览: 315362 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

IOS开发-常用代码块

ios 
阅读更多
1. 调用

//1、调用 自带mail
 
[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"mailto://admin@gmail.com"]];
 
 
//2、调用 电话phone
 
[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"tel://8008808888"]];

 
//3、调用 SMS
 
[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"sms://800888"]];
 
 
//4、调用自带 浏览器 safari
 
[[UIApplicationsharedApplication]openURL:[NSURLURLWithString:@"http://http://caiwb1990.iteye.com"]];
 
 
//调用phone可以传递号码,调用SMS 只能设定号码,不能初始化SMS内容。


2. 16进制颜色值的转换

#define
 UIColorFromRGB(rgbValue) [UIColor colorWithRed:((float)((rgbValue &
 0xFF0000) >> 16))/255.0 green:((float)((rgbValue & 0xFF00) 
>> 8))/255.0 blue:((float)(rgbValue & 0xFF))/255.0 alpha:1.0]



3.md5

+ (NSString*)md5:(NSString*)str
{
    constchar*cStr = [str UTF8String];
    unsignedcharresult[16];
    CC_MD5(cStr, strlen(cStr), result);
    return[NSStringstringWithFormat:@"XXXXXXXXXXXXXXXX",
            result[0], result[1], result[2],  result[3],
            result[4],  result[5],  result[6],  result[7],
            result[8],  result[9],  result[10],  result[11],
            result[12],  result[13],  result[14],  result[15]
            ];
}


4.计算2个经纬度之间距离

+(double)distanceBetweenOrderBy:(double)lat1:(double)lat2:(double)lng1:(double)lng2{ 
    CLLocation* curLocation = [[CLLocationalloc]initWithLatitude:lat1longitude:lng1];
    CLLocation* otherLocation = [[CLLocationalloc]initWithLatitude:lat2longitude:lng2];
   doubledistance  = [curLocation distanceFromLocation:otherLocation];
    returndistance;
}


5.输入框中是否有个叉号,在什么时候显示,用于一次性删除输入框中的内容

text.clearButtonMode=UITextFieldViewModeAlways;



6.iOS本地推送

第一步:创建本地推送 
// 创建一个本地推送  
UILocalNotification*notification = [[[UILocalNotificationalloc]init]autorelease];
//设置10秒之后 
NSDate*pushDate = [NSDatedateWithTimeIntervalSinceNow:10]; 
if(notification != nil) {  
    // 设置推送时间  
    notification.fireDate= pushDate;  
    // 设置时区  
    notification.timeZone= [NSTimeZonedefaultTimeZone]; 
    // 设置重复间隔  
    notification.repeatInterval= kCFCalendarUnitDay;  
    // 推送声音  
    notification.soundName= UILocalNotificationDefaultSoundName; 
    // 推送内容  
    notification.alertBody= @"推送内容"; 
    //显示在icon上的红色圈中的数子 
    notification.applicationIconBadgeNumber= 1; 
    //设置userinfo 方便在之后需要撤销的时候使用  
    NSDictionary*info = [NSDictionarydictionaryWithObject:@"name"forKey:@"key"]; 
    notification.userInfo= info;  
    //添加推送到UIApplication        
    UIApplication*app = [UIApplicationsharedApplication]; 
    [appscheduleLocalNotification:notification];  
      
} 
   
第二步:接收本地推送 
- (void)application:(UIApplication*)application didReceiveLocalNotification:(UILocalNotification*)notification{
    UIAlertView*alert = [[UIAlertViewalloc]initWithTitle:@"iWeibo"message:notification.alertBodydelegate:nilcancelButtonTitle:@"确定"otherButtonTitles:nil];
    [alertshow]; 
    // 图标上的数字减1  
    application.applicationIconBadgeNumber-= 1; 
} 
   
第三步:解除本地推送 
// 获得 UIApplication  
UIApplication*app = [UIApplicationsharedApplication]; 
//获取本地推送数组 
NSArray*localArray = [app scheduledLocalNotifications]; 
//声明本地通知对象 
UILocalNotification*localNotification;  
if(localArray) {  
    for(UILocalNotification*noti inlocalArray) {  
        NSDictionary*dict = noti.userInfo; 
        if(dict) {  
            NSString*inKey = [dict objectForKey:@"key"]; 
            if([inKey isEqualToString:@"对应的key值"]) {  
                if(localNotification){  
                    [localNotificationrelease]; 
                    localNotification = nil; 
                } 
                localNotification = [noti retain]; 
                break; 
            } 
        } 
    } 
      
    //判断是否找到已经存在的相同key的推送 
    if(!localNotification) {  
        //不存在初始化 
        localNotification = [[UILocalNotificationalloc]init]; 
    } 
      
    if(localNotification) {  
        //不推送 取消推送  
        [appcancelLocalNotification:localNotification]; 
        [localNotificationrelease]; 
        return; 
    } 
}




7.点击链接直接跳转到 App Store 指定应用下载页面

//跳转到应用页面
NSString*str = [NSStringstringWithFormat:@"http://itunes.apple.com/us/app/id%d",appid];
[[UIApplicationsharedApplication]openURL:[NSURLurlWithString:str]];
 
//跳转到评价页面
NSString*str = [NSStringstringWithFormat:@"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa/wa/viewContentsUserReviews?type=Purple+Software&id;=%d",  
                         appid ];    
[[UIApplicationsharedApplication]openURL:[NSURLurlWithString:str]];




8.父级view 不响应touch事件 子view相应事件

-(id)hitTest:(CGPoint)pointwithEvent:(UIEvent*)event {
    idhitView = [superhitTest:pointwithEvent:event];
    if(hitView == self)returnnil;
    elsereturn hitView;
}




9.给视图加上倒影效果

constCGFloat kReflectPercent = -0.25f;
constCGFloat kReflectOpacity = 0.3f;
constCGFloat kReflectDistance = 10.0f;
+ (void)addSimpleReflectionToView: (UIView*) theView
{
    CALayer*reflectionLayer = [CALayerlayer];
    reflectionLayer.contents= [theView layer].contents;
    reflectionLayer.opacity= kReflectOpacity;
    reflectionLayer.frame= CGRectMake(0.0f,0.0f,
        theView.frame.size.width,
        theView.frame.size.height* kReflectPercent);
    CATransform3Dstransform = CATransform3DMakeScale(1.0f, -1.0f,1.0f);
    CATransform3Dtransform = CATransform3DTranslate(stransform,0.0f,
        -(kReflectDistance + theView.frame.size.height),0.0f);
    reflectionLayer.transform= transform;
    reflectionLayer.sublayerTransform= reflectionLayer.transform;
    [[theViewlayer]addSublayer:reflectionLayer];
}
分享到:
评论

相关推荐

    ios 开发常用代码

    标题与描述中的“iOS开发常用代码”涉及到的是iOS应用程序开发中的常见编程实践和技术要点,主要聚焦于使用Objective-C或Swift语言进行UIKit框架下的界面元素定制和优化。以下将详细解析和扩展这部分内容所涵盖的...

    值得收藏的iOS开发常用代码块

    以下是一些值得收藏的iOS开发常用代码块,涵盖了数据操作、界面适配、表格视图处理以及用户默认设置等方面。 1. 遍历并删除可变数组中的元素: 在处理可变数组时,如果需要在遍历过程中删除元素,我们需要先复制一...

    iOS开发进阶-完整目录-高清

    1. iOS开发工具应用:文档提到了一些在iOS开发过程中常用的工具。例如,Ammonite(可能为文中提到的“(cid:36)(cid:80)(cid:68)(cid:80)(cid:66)(cid:49)(cid:80)(cid:69)(cid:84)”的正确翻译)是一个用于依赖管理...

    iOS程序开发教程(PPT+代码)

    1. **MVC(模型-视图-控制器)模式**:Title Lecture 1 MVC and Intro to Objective-C深入介绍了iOS开发的核心设计模式——MVC。它将应用程序分为三个主要部分:模型负责数据管理,视图负责显示,控制器则协调两者...

    ios-常用的taBleView样式.zip

    在iOS开发中,UITableView是构建用户界面的重要组件之一,它被广泛用于展示各种类型的数据,如联系人列表、菜单选项等。"ios-常用的tableView样式.zip"这个压缩包显然包含了关于如何在iOS应用中实现常见表格视图样式...

    ios-ios开发 短信验证码 加输入框.zip

    8. **Swift或Objective-C**:根据iOS开发的常用语言,这个组件可能是用Swift或Objective-C编写的。Swift作为现代编程语言,语法简洁,而Objective-C则是更传统的选择,两者都有丰富的库和社区支持。 9. **Auto ...

    很好用的Xcode qmui-ios-codesnippets

    在Xcode中,代码片段(Code Snippet)是一项实用功能,它允许开发者保存常用代码块以便快速插入到项目中,节省了编写重复代码的时间。 "qmui-ios-codesnippets"是QMUI团队为iOS开发者提供的一套针对Xcode的代码片段...

    iOS开发中常用的一些宏定义.zip

    6. **条件编译**:利用`#if`、`#else`、`#endif`等条件编译指令,可以在不同的环境或配置下执行不同的代码块。例如,针对iOS设备和模拟器编写不同的代码: ```c #if TARGET_IPHONE_SIMULATOR // 模拟器相关的代码...

    IOS常用的工具类和开源库

    在iOS开发中,为了提升开发效率和代码质量,开发者经常使用各种工具类和开源库来辅助实现功能。本文将深入探讨iOS开发中常用的工具类和开源库,包括下拉刷新、正则表达式、gif动画处理以及JSON解析等方面的知识点。 ...

    IOS应用程序开发指南(中文)

    - **熟悉Model-View-Controller (MVC)**:iOS开发中的常用设计模式,用于组织代码结构和分离业务逻辑。 - **事件驱动编程**:理解事件和手势的处理,以及如何响应用户输入。 - **Core Data**:苹果提供的数据持久...

    Xcode 常用的 CodeSnippets 代码块

    CodeSnippets是Xcode内置的一种代码模板系统,它允许开发者自定义一组常用的代码段,这些代码段可以是函数、类定义、特定的变量声明或者任何其他重复使用的代码块。一旦创建了CodeSnippets,只需在编辑器中输入相应...

    iOS 代码的规范

    Objective-C作为iOS开发的重要语言,对于其代码规范的理解和应用尤为重要。 首先,Objective-C编程艺术的章节1至6部分介绍了代码中需要特别注意的几个方面: 1. 初始化和销毁:在Objective-C中,类的初始化通常...

    Ios学习代码:OC课程代码

    "Ios学习代码: OC课程代码"这个资源集合了作者在学习Objective-C过程中编写的示例代码,涵盖了OC的基础概念、语法特性以及与iOS开发相关的实践应用。 1. **Objective-C简介** Objective-C是在C语言基础上扩展的一...

    腾讯 QMUI Team 常用的 Xcode Code Snippets 代码片段,加速开发效率!.zip

    【标题】中的“腾讯 QMUI Team 常用的 Xcode Code Snippets 代码片段”指的是腾讯QMUI团队在iOS开发中常用的一系列自定义Xcode代码片段。这些代码片段是开发人员为了提高开发效率而创建的,它们通常包含了常见的编程...

    iOS游戏应用源代码——buckybush-Blackjack-f4cd417.zip

    4. **MVC设计模式**:Model-View-Controller模式是iOS开发中常用的设计模式。在这个项目中,模型层负责游戏数据的存储和处理,视图层负责显示,控制器层协调两者,理解这一结构对提升代码组织能力至关重要。 5. **...

    【无限互联】iOS开发视频教程课件第1、2章OC基础语法课件

    ### iOS开发之Objective-C基础语法知识点详解 #### 一、标示符 在Objective-C (以下简称OC) 语言中,标示符是用来标识各种变量、方法、类等元素的名称。标示符遵循一定的命名规则: - **组成**: 字母、下划线“_”...

    iOS常用的Category分类

    对GCD的扩展可以提供更便捷的异步执行任务的方式,如`dispatchAsyncOnQueue:block:`可以在指定队列上异步执行代码块。 通过以上Category的使用,开发者可以极大地提升代码的可读性和复用性,同时避免过度设计。...

    iOS开发UI篇—IOS开发中Xcode的一些使用技巧.pdf

    对于经常使用的代码块,可以以代码块的方式保存起来,设置提示词,以便快速的编码。 五、打印内容查看 打印内容查看是一种非常有用的功能,可以帮助开发者快速查看对象的明细信息。可以通过重写 description 方法...

    iOS_开发快速入门视频教程下载地址

    - **函数与闭包**:函数是完成特定任务的一段代码,闭包是一种可以捕获并记住其周围状态的自包含函数代码块。 - **类与结构体**:Swift支持面向对象编程,类(Class)可以继承自其他类,而结构体(struct)则不可继承。 ...

Global site tag (gtag.js) - Google Analytics