iOS - 一行代码实现调用系统相机与相册,可配置导航栏背景与字体颜色

在开发中有时会经常调用系统相册或者相机,然而每次都写一堆代码,还要遵守相应的协议和实现代理方法,相当麻烦,所以抽空就完成这么一个小玩意,减少我们开发者的代码量。先附上链接 GitHub地址: LXFPhotoHelper

�简介

一行代码实现调用系统相机与相册,可配置导航栏背景与字体颜色

使用方法

  • 自定义样式
// 配置
LXFPhotoConfig *config = [[LXFPhotoConfig alloc] init];
config.navBarTintColor = [UIColor greenColor];
config.navBarBgColor = [UIColor purpleColor];
config.navBarTitleColor = [UIColor yellowColor];

// sourceType : 
// UIImagePickerControllerSourceTypeCamera 
// UIImagePickerControllerSourceTypePhotoLibrary 等
[[LXFPhotoHelper creatWithSourceType:sourceType config:config] getSourceWithSelectImageBlock:^(id data) {
    if ([data isKindOfClass:[UIImage class]]) { // 图片
        [self.imageView setImage:(UIImage *)data];
    } else {
        NSLog(@"所选内容非图片对象");
    }
}];

自定义样式

  • 默认样式

只要将 config 传入 nil即可。 默认样式存在的意义在于:我们经常在开发的时候对导航栏的自定义是不可避免的,然而在自定义导航栏后经常出现一些小问题:导航栏背景、标题、按键皆为白色系,根本看不清楚。

使用默认样式即可避免�这个问题

// config 传入 nil
[[LXFPhotoHelper creatWithSourceType:sourceType config:nil] getSourceWithSelectImageBlock:^(id data) {
    if ([data isKindOfClass:[UIImage class]]) { // 图片
        [self.imageView setImage:(UIImage *)data];
    } else {
        NSLog(@"所选内容非图片对象");
    }
}];

默认样式

提示

如图,�默认显示的是英文

如果要改为中文显示的话,在你项目下,找到info.plist,打开后添加一项 【Localized resources can be mixed】并设置为YES 即可。iOS语言本地化,中文显示

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序员叨叨叨

私人订制Android本地图片选择器

史上最强的安卓图片选择器——GalleryFinal; 简书博客地址——http://www.jianshu.com/p/48ddd6756b7a

1843
来自专栏V站

Note丨记41条Web程序员日常使用的代码!

2228
来自专栏青玉伏案

iOS开发之三个Button实现图片无限轮播(参考手机淘宝,Swift版)

这两天使用Reveal工具查看"手机淘宝"App的UI层次时,发现其图片轮播使用了三个UIButton的复用来实现的图片循环无缝滚动。于是乎就有了今天这篇博客,...

3078
来自专栏mukekeheart的iOS之旅

iOS项目——自定义UITabBar与布局

  在上一篇文章iOS项目——基本框架搭建中,我们详细说明了如何对TabBarItem的图片属性以及文字属性进行一些自定义配置。但是,很多时候,我们需要修改Ta...

4939
来自专栏飞雪无情的博客

Android设计应用图标不用愁---Asset Studio Integration来帮你

Android Asset StudioWeb版是一个非常好用的Andrid图标资源设计工具,它是由RomanNurik开发的。现在我们已经在ADT14里支持同...

1155
来自专栏Jerry的SAP技术分享

微信小程序开发系列二:微信小程序的视图设计

大家如果跟着我第一篇文章 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 一起动手,那么微信小程序的开发环境一定搭好了。效果就是能把该小程序的体验版以二...

1482
来自专栏十月梦想

vue非父子通讯(BUS/总线机制/订阅者模式)

前面我们讲述的是父子间的数据通讯,那么这里就来介绍非父子间通讯!之前的发布的《一天带你入门到放弃vue.js(二)》中介绍了使用Event调度器来实现传递,这里...

3241
来自专栏前端小叙

手机端网页使用html5地理定位获取位置失败的解决办法

网上有很多关于html5 geolocation 获取地理定位的方法,我试了下,只有在IE edge浏览器可以成功获取到,在chrome,firefox,手机端...

8106
来自专栏技术总结

UIView不可不知的秘密

2379
来自专栏分享达人秀

日历视图CalendarView和定时器Chronometer

上一期学习了AnalogClock、DigitalClock和TextClock时钟组件,本期继续来学习日历视图CalendarView和定时器Chro...

2316

扫码关注云+社区

领取腾讯云代金券