随笔分类 -  实用小技巧

开发实用小技巧
摘要:本地化:根据不同的语言切换不同的文字(localization) 国际化:i18n(其他语言) 格式:左边是key,右边是value 让项目支持中文和英文 取文字: App软件名的本地化 创建名为InfoPlist.string的语言包 Base English Chinese(Simplified 阅读全文
posted @ 2018-12-17 16:46 淡然微笑_Steven 阅读(563) 评论(0) 推荐(0)
摘要:1、导出ipa包,可以是企业级签名,也可以是100测试设备的签名。 2、申请个人域名,可以到godaddy.com上面去申请。 3、应用图标512512 5757尺寸各一张 4、github新建repository myipa, 导入ipa和应用图标 5、新建manifest.plist文件 其中  阅读全文
posted @ 2018-12-17 15:35 淡然微笑_Steven 阅读(3043) 评论(0) 推荐(0)
摘要:一、相册的选择-单张(系统-打开相册和打开相机📷) 效果图: 二、相册的选择-单张/多张(第三方CTAssetsPickerController) 效果图: 三、本地化 给项目添加语言支持-选择简体中文 国际化-本地化 阅读全文
posted @ 2018-12-17 09:58 淡然微笑_Steven 阅读(1298) 评论(0) 推荐(0)
摘要:保存到相册步骤: 1.保存图片到【相机胶卷】 2.拥有一个【自定义相册】 3.将刚才保存到【相机胶卷中的图片】引用到【自定义相册】 ①保存图片到【相机胶卷】 Photos框架详解和保存图片 1.Photos框架详解 2.Photos框架保存图片到相机胶卷 ②拥有一个【自定义相册】 Foundatio 阅读全文
posted @ 2018-12-15 12:07 淡然微笑_Steven 阅读(1760) 评论(0) 推荐(0)
摘要:①笨方法: ②懒加载(滑动完成之后再加载) ③懒加载-不使用Index(滑动完成之后再加载) ViewDidLoad默认加载第0个控制器的View 阅读全文
posted @ 2018-12-13 16:50 淡然微笑_Steven 阅读(739) 评论(0) 推荐(0)
摘要:名字叫attributes并且是NSDictionary *类型的参数,它的key一般都有以下规律 1.iOS7开始 1> 所有的key都来源于: NSAttributedString.h 2> 格式基本都是:NS***AttributeName 2.iOS7之前 1> 所有的key都来源于: UI 阅读全文
posted @ 2018-12-12 10:28 淡然微笑_Steven 阅读(525) 评论(0) 推荐(0)
摘要:一、Bundle创建 二、Bundle使用 阅读全文
posted @ 2018-12-12 10:06 淡然微笑_Steven 阅读(418) 评论(0) 推荐(0)
摘要:一、按钮的状态 二、按钮无法点击 三、获取按钮的当前标题 四 、按钮内部子控件对齐 五、按钮内部子控件的间距 阅读全文
posted @ 2018-12-12 10:03 淡然微笑_Steven 阅读(297) 评论(0) 推荐(0)
摘要:思路:用UICollectionView为父容器,用于显示个人详细信息、多行多列Tab切换。 ①抖音个人主页包含用户信息和用户发布、喜欢的视频列表,以CollectionView为父容器即可全部实现。UICollectionView包含两个Section,第一个Section包含一个Header和一 阅读全文
posted @ 2018-12-11 19:50 淡然微笑_Steven 阅读(4103) 评论(0) 推荐(0)
摘要:思路: ①计算缓存数据,计算整个应用程序缓存数据 ② 沙盒(Cache)缓存(SDWebImage:帮我们做了缓存) ③ 获取cache文件夹尺寸 // 获取Caches文件夹路径 //NSString *cachePath = [NSSearchPathForDirectoriesInDomain 阅读全文
posted @ 2018-12-06 20:15 淡然微笑_Steven 阅读(1277) 评论(0) 推荐(0)
摘要:①Safari openURL 自带很多功能(进度条,刷新,前进,倒退等等功能),必须要跳出当前应用 ②UIWebView UIWebView (没有功能) ,在当前应用打开网页,并且有safari,自己实现,UIWebView不能实现进度条 ③WKWebView WKWebView:iOS8 (U 阅读全文
posted @ 2018-12-06 09:27 淡然微笑_Steven 阅读(1613) 评论(0) 推荐(0)
摘要:思路: 在一个UIView设置它的Frame的宽度是屏幕的两倍,然后把登录的View和注册的View同时加载这个View上(注册View.x=这个View宽度的一半),点击切换按钮时改变这个UIView的leadingConstraint(View.x)就可以让这两个View显示。 代码: 效果图: 阅读全文
posted @ 2018-12-03 09:40 淡然微笑_Steven 阅读(505) 评论(0) 推荐(0)
摘要:UITableView包括什么: 1.cell 2.tableHeaderView\tableFooterView 3.sectionHeader\sectionFooter contentSize.height : 所有内容的总高度 contentInset : 在内容周围额外增加的间距(内边距) 阅读全文
posted @ 2018-12-02 11:33 淡然微笑_Steven 阅读(998) 评论(0) 推荐(0)
摘要:UIScrollView基本使用: 1.设置可以滚动的范围 contentSize 2.设置内容的偏移量 contentOffset 3.设置滚动区域四周的滚动范围 contentInset 4.指定控件是否只能在一个方向上滚动(默认NO) 5.是否有弹簧效果 6.当值是 YES 会自动滚动到 su 阅读全文
posted @ 2018-11-29 18:50 淡然微笑_Steven 阅读(1944) 评论(0) 推荐(0)
摘要:#import "ViewController.h" #import "ScoietyViewController.h" #import "HotViewController.h" #import "TopLineViewController.h" /* 父子控制器:多控制器管理,导航控制器,UITabBarController 默认UITabBarController,实... 阅读全文
posted @ 2018-11-24 18:18 淡然微笑_Steven 阅读(667) 评论(0) 推荐(0)
摘要:UITableViewCell出现动画 阅读全文
posted @ 2018-11-24 17:04 淡然微笑_Steven 阅读(563) 评论(0) 推荐(0)
摘要:1.用typedef声明一个block ①无参数无返回值 ②带参数 2.用@property声明Block ①无参数无返回值 ②带参数 ③带返回值的Block ④无返回值的Block ⑤参数使用 其他: //代理修饰: 阅读全文
posted @ 2018-11-24 12:02 淡然微笑_Steven 阅读(252) 评论(0) 推荐(0)
摘要:storyboard :故事版,描述软件界面。 应用程序的启动原理: 应用程序启动的时候,首先会加载一个Main Interface 里的 main.storyboard UIViewController 控制器,处理界面的各种事件,并负责界面的创建和销毁。 IBAction: ①只能修饰方法返回值 阅读全文
posted @ 2018-11-24 11:53 淡然微笑_Steven 阅读(746) 评论(0) 推荐(0)
摘要:原生代码和JS交互说明 原则 1.接口不要定义返回值,JS有获取数据需求的情况通过回调函数的方式实现 2.尽量保证iOS和Android端一致,简化JS端的使用 iOS端 iOS端目前使用WKWebview加载前端Html。 JS调用OC接口WKWebView提供了postMessage的机制来让J 阅读全文
posted @ 2018-09-29 14:48 淡然微笑_Steven 阅读(2613) 评论(0) 推荐(0)
摘要:Xcode Workspace就如同工厂, Xcode Project如同车间,每个车间可以独立于工厂来生产产品( project可独立于 workspace存在),但是各个车间组合起来就需要工厂来组织(如果用了 cocopods,就需要用 workspace)。 Xcode Target是一条条的 阅读全文
posted @ 2018-07-15 16:57 淡然微笑_Steven 阅读(745) 评论(0) 推荐(0)