找到应用程序的描述链接,比如:http://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8 然后将 http:// 替换为 itms:// 或者 itms-apps://:  itms://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8  itms-apps:// itunes.apple.com/gb/app/yi-dong-cai-bian/id391945…
  找到应用程序的描述链接,在itunes中找到相应的应用,(如下图),点击免费右边的下方向键,选择复制链接,就拿到了对应的app的描述链接 比如:https://itunes.apple.com/cn/app/qi-miao-qing-dan-ren-wu-guan/id406644151?mt=8 然后将 http:// 替换为 itms:// 或者 itms-apps://:  itms://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945…
找到应用程序的描述链接,比如:http://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8 然后将 http:// 替换为 itms:// 或者 itms-apps://:  itms://itunes.apple.com/gb/app/yi-dong-cai-bian/id391945719?mt=8  itms-apps:// itunes.apple.com/gb/app/yi-dong-cai-bian/id391945…
1.## 与 @# 在宏里面该怎样使用 ##的使用, 首先我们添加一个宏 #define LRWeakSelf(type) __weak typeof(type) weak##type = type; ##是连接的作用, 即当使用上面的宏会把weak与输入的type值连接起来如下图: #的意思是紧跟着它的后面的标识符添加一个双引号""@#的使用, 我们添加一个普通的宏: #define LRToast(str) [NSString stringWithFormat:@"%@&…
方法一:直接复制全部源文件到项目中 这样的方法就是把第三方类库的全部源文件拷贝到项目中,直接把全部.h和.m文件拖到XCode项目中就可以. 注意: 1. 假设第三方类库引用了一些系统自带类库,那么在项目中还须要额外引用那些类库. 2. 假设当前的项目启用了ARC,而引用的第三方类库未使用ARC.那还须要在项目信息的Targets – Build Parses 里找到第三方类库的.m文件.并为它们加上-fno-objc-arc标记. 3. 对于在未启用ARC的项目用引用使用了ARC的第三方类库.…
一.介绍 dom是w3c指定的一套规范标准,核心是按树形结构处理数据,dom解析器读入xml文件并在内存中建立一个结构一模一样的“树”,这树各节点和xml各标记对应,通过操纵此“树”来处理xml中的文件.xml文件很大时,建立的“树”也会大,所以会大量占用内存. sax解析器核心是事件处理机制.例如解析器发现一个标记的开始标记时,将所发现的数据会封装为一个标记开始事件,并把这个报告给事件处理器,事件处理器再调用方法(startElement)处理发现的数据.下面我们尝试一下SAX和DOM解析:…
NSUInteger是无符号的整型, NSInteger是有符号的整型,在表视图应用中常见 NSUInteger row= [indexPath row];因为这是显示tableViewCell有多少个,只能是非零整数的,也就是说,NSUInteger常用于索引值: int与 NSInteger没有本质区别,只是一个定义为题 - (BOOL) isBlankString:(NSString *)string { if (string == nil || string == NULL) { ret…
问题根本:不要使用line-height垂直居中. 解决方法:可直接定义height,然后高度由上下padding值撑开. input { height: 1rem; padding: 1rem 0; }…
app开发中,通常会有邀请用户给app打分的功能.而在iOS中,正式应用都是通过appStore 下载的,因此给app 打分也只能在 appStore中.因此,需要从应用跳转到appStore.方法是打开响应的url 即可.代码如下: NSString *appid = @"1234567"; NSString *str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/cn/app/id%@?mt=8&q…
iOS开发中,应用内直接跳转到Appstore 1.进入appstore中指定的应用NSString *str = [NSString stringWithFormat:                          @"itms-apps://ax.itunes.apple.com/WebObjects/MZStore.woa /wa/viewContentsUserReviews?type=Purple+Software&id=%d",                 …
1.获取app 在AppStore上的网址 eg: NSString * appURLStr = @"https://itunes.apple.com/cn/app/shi-ke-zu-qiu-bi-sai-zhi-bo/id1071662346?mt=8"; 2.将字符串替换 eg: appURLStr = [appURLStr stringByReplacingOccurrencesOfString:@"https:" withString:@"itm…
在这里总结一些iOS开发中的小技巧,能大大方便我们的开发,持续更新. UITableView的Group样式下顶部空白处理 //分组列表头部空白处理 UIView *view = [[UIViewalloc] initWithFrame:CGRectMake(0, 0, 0, 0.1)]; self.tableView.tableHeaderView = view; UITableView的plain样式下,取消区头停滞效果 - (void)scrollViewDidScroll:(UIScro…
这篇教程的前半部分被翻译出来很久了,我也是通过这个教程学会的IOS自动布局.但是后半部分(即本篇)一直未有翻译,正好最近跳坑翻译,就寻来这篇教程,进行翻译.前半部分已经转载至本博客,后半部分即本篇.学习IOS自动布局的朋友可以看看.自动布局很强大. 转载请注明来源:http://www.cnblogs.com/zer0Black/p/3977288.html 作者:zer0Black 这篇教程绝对的最好的学习IOS自动布局的文章,没有之一 原文地址:Beginning Auto Layout T…
1.关于拍摄 TGCameraViewController – 基于 AVFoundation 的自定义相机.样式漂亮,轻量并且可以很容易地集成到 iOS 项目中.不会内存吃紧 2.block 中对控制器本身的self方法的调用一定要改成weak 属性 3.在使用tabbarController 的时候一定要使用自定义的控制器,中间的tabbar最好也是自定义的 4.MVVMReactiveCocoa     重要 这个是框架问题 5.在使用字符串的时候考虑控件的大小和语言, 举例: desc…
使用静态库的好处 1,模块化,分工合作 2,避免少量改动经常导致大量的重复编译连接 3,也可以重用,注意不是共享使用 动态库使用有如下好处: 1使用动态库,可以将最终可执行文件体积缩小 2使用动态库,多个应用程序共享内存中得同一份库文件,节省资源 3使用动态库,可以不重新编译连接可执行程序的前提下,更新动态库文件达到更新应用程序的目的. 从1可以得出,将整个应用程序分模块,团队合作,进行分工,影响比较小. 等其他好处, 从2可以看出,其实动态库应该叫共享库,那么从这个意义上来说,苹果禁止iOS开…
在APP开发中,可能会涉及到打电话.发短信.发邮件等功能.比如说,通常一个产品的"关于"页面,会有开发者的联系方式,理想情况下,当用户点击该电话号码时,能够自动的帮用户拨出去,就涉及到了打电话的功能. iOS开发中,有三种方式可以打电话: (1)直接跳到拨号界面,代码如下 NSURL *url = [NSURL URLWithString:@"tel://10010"]; [[UIApplication sharedApplication] openURL:url]…
UIWebView是iOS开发中常用的一个视图控件,多数情况下,它被用来显示HTML格式的内容. 支持的文档格式 除了HTML以外,UIWebView还支持iWork, Office等文档格式: Excel (.xls) Keynote (.key.zip) Numbers (.numbers.zip) Pages (.pages.zip) PDF (.pdf) Powerpoint (.ppt) Word (.doc) Rich Text Format (.rtf) Rich Text For…
    iOS 应用程序之间(1)  在iOS开发中,经常需要调用其它App,如拨打电话.发送邮件等.UIApplication:openURL:方法是实现这一目的的最简单方法,该方法一般通过提供的url参数的模式来调用不同的App. 通过openURL方法可以调用如下应用: 调用谷歌地图(Google Maps) 调用邮件客户端(Apple Mail) 拨号(Phone Number) 调用短信(SMS) 调用浏览器(Safari Browser) 调用应用商店(AppStore) 调用谷歌地…
前言 小伙伴们在开发中难免会遇到问题, 你是如何解决问题的?不妨也分享给大家!如果此文章其中的任何一条问题对大家有帮助,那么它的存在是有意义的! 反正不管怎样遇到问题就要去解决问题, 在解决问题的同时也是提高开发经验的渠道! 1.既然有问题我们该怎样解决 ? 首先大部分人都会去百度搜索来解决问题, 谁都不例外, 可是百度这东西会有很多误解, 甚至误人子弟, 同时解决问题的效率也不是很高, 如果是技术问题可以去: Google 简单来说比百度搜索的答案相对要多,要更准确效率更高, 建议使用英文搜索…
1. 应用间相互跳转简介 在iOS开发的过程中,我们经常会遇到需要从一个应用程序A跳转到另一个应用程序B的场景.这就需要我们掌握iOS应用程序之间的相互跳转知识. 下面来看看我们在开发过程中遇到的应用场景. 2. 应用间相互跳转应用场景 使用第三方用户登录,跳转到需授权的App.如QQ登录,微信登录等. 需要用户授权,还需要"返回到调用的程序,同时返回授权的用户名.密码". 应用程序推广,跳转到另一个应用程序(本机已经安装),或者跳转到iTunes并显示应用程序下载页面(本机没有安装)…
实例一:A程序跳转到B程序 第一步: 在B程序plist文件中,注册对外接口如图在B程序中找到info.plist点击,找到Information Property List ,右击 添加列表项 找到URL types ,在item0下将URL identifier 改为 URL Schemes 再右击他添加一个对象(item1),将item1得值设置为:myapp 这个myapp就是对外接口,其它应用可以通过它,调用该应用 B程序.png 第二步: 在B程序的AppDelegate.m文件中,…
在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个prefs值,如下图: 跳转系统设置根目录中的项目使用如下的方法: _array = @[ @{@"系统设置":@"prefs:root=INTERNET_TETHERING"}, @{@"WIFI设置":@"prefs:root=WIFI&qu…
IOS开发中重写init方法使用需谨慎 今天在写一个小软件的时候出现一点问题,这个软件的功能是搜索全国学校,首页就是搜索输入框,在框中输入完要查询的学校所在省份,点击buttom后就会跳转到对应的视图控制器中,然后把搜索结果呈现在一个TableView上,但是我在调试时,每次输入完然后点击搜索按钮时,弹出结果列表总是空的,我需要返回到首页再点击一次搜索才会出现结果,而且我在首页更改搜索关键字之后,点击搜索,结果还是上次的搜索结果,必须返回点击一次才会出现这次的搜索结果. 经过大神指点,原来这个问…
在IOS开发中,有时候会遇到如下情况:在页面1上有一个RedView,在RedView上有一个GreenView,在GreenView上有一个button,这些view的创建代码如下: 1.AppDelegate.m // // AppDelegate.m // 响应者链 // // Created by mac on 16/5/10. // Copyright © 2016年 mzw. All rights reserved. // #import "AppDelegate.h" #…
在IOS开发中,我们model另外一个控制器的时候,一般都使用默认的转场动画. 其实我们可以自定义一些转场动画.达到不同的转场效果. 步骤如下:(photoBrowser是目标控制器) 1.在源控制器中,设置目标控制器的转场代理为 self //设置Model转场代理  photoBrowser.transitioningDelegate = self 2.同时设置目标控制器的model类型 //设置Model类型 photoBrowser.modalPresentationStyle=UIMo…
在iOS开发中,有时会有跳转系统设置界面的需求,例如提示用户打开蓝牙或者WIFI,提醒用户打开推送或者位置权限等.在iOS6之后,第三方应用需要跳转系统设置界面,需要在URL type中添加一个prefs值,如下图: 需要设置prefs 设置跳转有三种方式,每一种的使用场景都不同. 并且你在跳转到系统中自己应用下面设置的时候,你的应用要提前至少申请了某一个权限,如通知,定位等.否则,会引起崩溃. 方式一:prefs:root=某项服务 方式二:prefs:root=bundleID 方式三: U…
背景 目前,开源社区和业界内已经存在一些 iOS 导航栏转场的解决方案,但对于历史包袱沉重的美团 App 而言,这些解决方案并不完美.有的方案不能满足复杂的页面跳转场景,有的方案迁移成本较大,为此我们提出了一套解决方案并开发了相应的转场库,目前该转场库已经成为美团点评多个 App 的基础组件之一. 在美团 App 开发的早期,涉及到导航栏样式改变的需求时,经常会遇到转场效果不佳或者与预期样式不符的“小问题”.在业务体量较小的情况下,为了满足快速的业务迭代,通常会使用硬编码的方式来解决这一类“小问…
iOS开发过程中,我们经常碰到应用间跳转的情景: 1.使用第三方用户登录,跳转到需授权的App或跳转到分享app的对应页面 *需要用户授权,还需要"返回到调用的程序,同时返回授权的用户名.密码": 2.应用程序推广,跳转到另一个应用程序(本机已经安装): 3.跳转到iTunes并显示应用程序下载页面(本机没有安装): 4.第三方支付,跳转到第三方支付App,如支付宝支付,微信支付: 5.使用系统内置程序,如跳转到打电话.发短信.发邮件.Safari等 应用间跳转原理:若应用A跳转到应用…
前言 断点续传概述 断点续传就是从文件赏赐中断的地方重新开始下载或者上传数据,而不是从头文件开始.当下载大文件的时候,如果没有实现断点续传功能,那么每次出现异常或者用户主动的暂停,都会从头下载,这样很浪费时间有木有.所以呢,项目中实现大文件下载的时候,断点续传功能是必不可少了.当然咯,断点续传有一种特殊的情况,就是我们的应用呗用户kill掉或者应用crash,要实现应用重启之后的断点续传,这种情况就是我们将要解决的问题. 断点续传的原理 要实现断点续传,服务器必须是要支持的.目前最常见的两种方式…
iOS开发中静态库之".framework静态库"的制作及使用篇 .framework静态库支持OC和swift .a静态库如何制作可参照上一篇: iOS开发中静态库之".a静态库"的制作及使用篇 一.OC创建.framework静态库 1.创建工程,语言选择OC 2.进入工程后,会自动帮我们创建一个.h文件,主头文件,和我们项目名称一般完全一致.不要删除了! 3.编写核心代码 依旧使用简单示例,MathTools MathTools.h文件 @interface…