iOS开发-图片浏览器(优化)】的更多相关文章

// //  ViewController.m //  19-图片浏览器 // //  Created by hongqiangli on 2017/7/31. //  Copyright © 2017年 李洪强. All rights reserved. // #import "ViewController.h" @interface ViewController () /** 记录当前的索引号 */ @property(nonatomic,assign)int index; /**…
一 示例代码 // // RootViewController.m // 图片浏览器初步 // // Created by lovestarfish on 15/11/1. // Copyright © 2015年 S&G. All rights reserved. // #import "RootViewController.h" #define POTOIMGW 175 #define POTOIMGH 300 #define POTOIMGX 100 #define PO…
李洪强iOS开发之性能优化技巧 通过静态 Analyze 工具,以及运行时 Profile 工具分析性能瓶颈,并进行性能优化.结合本人在开发中遇到的问题,可以从以下几个方面进行性能优化. 一.view优化 1.不透明的View 设置为opaque. 2.根据实际情况重用.延迟加载或预加载View. 3.减少subviews数量,定制复杂cell使用drawRect.尽量使用drawRect而不是layoutSubView. 4.不直接调用drawRect. layoutSubviews方法.万不…
原创作者:Magic-Unique 原文地址:https://github.com/Magic-Unique/HXImage猿吧 - 资源共享论坛: http://www.coderbar.cn 做最优质的iOS 学习资源共享平台! 这篇文章是笔者在开发App过程中发现的一些内存问题, 然后学习了YYKit框架时候也发现了图片的缓存处理的不够得当. 以下内容是笔者在开发中做了一些实验以及总结. 如有错误望即时提出, 笔者会第一时间改正. 文章的前篇主要是对两种不同的UIImage工厂方法的分析,…
iOS开发的时候有的时候需要将图片设置模糊,或者通过点击下拉方法,去除模糊,一切都是为了应用更受用户欢迎,iOS7之后半透明模糊效果得到大范围使用的比较大,现在也可以看到很多应用局部用到了图片模糊效果,关于图片实现高斯模糊效果有三种方式,CoreImage,GPUImage(第三方开源类库)和vImage.GPUImage没怎么用过,本文就讲两种方式Core Image和vImage. Core  Image 开始撸代码之前我们先来看一下实现的效果: iOS5.0之后就出现了Core Image…
目前IOS端开发,图片上传到服务器分为两种,一种是直接上到服务器,一种是借助第三方储存(减少服务器压力). 一.直接上传到服务器 /** * 代码演示 */ //*******UIImagePNGRepresentation(UIImage* image) 要比UIImageJPEGRepresentation(UIImage* image, 1.0) 返回的图片数据量大很多,但从视角角度看,图片的质量没有明显的降低,所以在读取图片数据内容时,可以先使用UIImageJPEGRepresenta…
由于公司开发需要,需要滚动每道评测题, 并且一道评测题单项选择,按钮和文字都可点击选中 (单选比多选复杂一点,但是原理差不多) 1.当初任务紧,代码也没有优化,仅供思路参考,先放几张图 2.代码部分 :支持返回代理实现界面刷新重置(忽略代码中的网络请求和统计部分) // Created by 刘成利 on 15/12/18. // Copyright © 2015年 YouXianMing. All rights reserved. // #import "RiskEvaluationViewC…
1.避免过于庞大的XIB 当加载XIB的时候把所有的东西都放在了内存里,包括任何的图片:如果有一个不会即刻用到的view,就会浪费宝贵的内存资源了. 当加载一个引用了图片或者声音资源的nib时,nib加载代码会把图片和声音文件写进内存. 2.不要阻塞主线程 UIKit在主线程上的所有工作,渲染,管理触摸,回应输入等都需要在上面完成. 将耗时操作放在子线程中. 3.在imageViews中调整图片的大小 如果要在UIImageView中显示一个来自bundle的图片,你就应该保证图片的大小和UII…
在用非ARC模式编写iOS程序的时候,造成程序内存泄露在所难免,后期我们一般会进行内存优化.自己比较常用的内存优化方法有两种 1.Analyze,静态分析内存泄露的方法.很简单,在Xcode菜单栏中点击 ”Product“ -> "Analyze",编译完成后项目工程中可能造成内存泄露的代码就会被标记出来,这样我们就可以有针对性的更改代码优化内存了. 2.使用Xcode的自带工具Leaks,动态的检测内存泄露.一般步骤如下. 1>在Xcode菜单栏中点击 ”Product“…
图片点击放大,再次点击返回原视图.完美封装,一个类一句代码即可调用.IOS完美实现 创建了一个专门用于放大图片的类,以下为.h文件 #import <Foundation/Foundation.h> @interface SJAvatarBrowser : NSObject /** *  @brief  浏览头像 * *  @param  oldImageView    头像所在的imageView */ +(void)showImage:(UIImageView*)avatarImageVi…
之前的一篇文章大概讲述了一下UITableView的使用,UITableView在iOS的地位和ListView在Android中的地位基本上算是不相上下,关于ListView的优化网上的也有很多文章.UITableView苹果公司本身就已经优化了其中的功能,不管你有多少数据,每次加载的时候只是加载当前页面的数据,以免造成不必要的内存占用.一个非常常见的优化就是使用Identifier,也就是唯一标示,将页面中不用的对象放在缓存池中,如果有新的对象出现从缓存池中取出. 页面布局 页面布局还是跟上…
上周没事写了一个简单的图片查看,上次的查看只用到了一个UIImageView,不断的替换背景图片,实现图片之间的切换.通过ScrollView可以很简单的是实现图片之间的查看,设置setPagingEnabled通过坐标,宽度的设置,可以简单实现一个图片的简单分页查看显示,当然如果你有需求说需要进行所谓的无限循环,在开始和结束的时候的设置一下事件,常用的新闻客户端,图片新闻查看的时候很少有进行最后的时候跳到第一页,一般都是最后的时候都是推荐相关内容,多说了两句,开始吧: ScrollView图片…
效果 设计思路 需求分析 图片浏览,上/下一张,放大缩小等基本功能.可以继续拓展的功能:缩略图.旋转,画笔修改等.此外,缩放实现较为简单,所以会出现失真.设计此类软件功能可参考ACDSee或irfanview等看图软件. 知识点 1.文件过滤.文件IO:FileFilter 2.文件对话框:JFileChooser(添加文件过滤功能) 3.浏览器主界面:JToolBar/JMenuBar/JScrollPane 4.响应事件:ActionListener/AbstractAction 5.展示图…
在这篇文章当中,不会讲述关于具体px pt,分辨率,像素的问题,在这篇文章中,只会谈及到一些展现的问题 如果想了解更多关于pt,px之间的关系可以自行到百度查找相关的答案,或者到以下地址阅读更多相关的信息 http://www.wtoutiao.com/p/10fxbGz.html 首先我们来看一下以下的这张图,在这个图中可以很明显的看出,什么样的设备会用到什么图片比例 在开发过程中, 设备为iphone 3,图片自动会选择1x, 设备是iphone4-iphone6s,图片会自动使用2x, 设…
纵观现实社会和移动app市场,这是一个看脸的时代,而好看且漂亮的APP界面就是移动APP的脸.漂亮的外观后面少不了UI设计人员的辛苦,如果不懂的处理,就浪费了UI设计人员的心血. 比如下面这张图片,是用来做按钮图片的    大小为:59 * 32 先在把它作为一张图片显示出来,图片显示位置设置为200 * 50 #import "ViewController.h" @interface ViewController () @end @implementation ViewControl…
直接上代码了,比较简单.演示下载地址:Demo // // UYViewController.m // 图片轮播器 // // Created by jiangys on 15/5/23. // Copyright (c) 2015年 uxiaoyuan. All rights reserved. // #import "UYViewController.h" #define kImageCount 5 @interface UYViewController ()<UIScrol…
1.以后的应用程序,都使用AutoLayout, 不要再用绝对定位. 2.使用类似网页的方式来设计界面. 3.设计师好,程序员也好,尽量使用点这个单位进行思考,而不要使用像素.比如,你需要做44 x 66个点的按钮,2x模式,就乘以2, 3x模式就乘以3.这样的思考方式可以大致估计到真实的物理长度.44个点,就是手机上导航栏,工具栏的高度.假如用像素思考,容易使得做出的图片过大或者过小. 4.非矢量素材,就可以做尺寸最大的,之后再进行缩小.比如你需要兼容3x的屏幕,就直接做最高那种图片. 5.而…
1.复用单元格 2.单元格中的视图尽量都使用不透明的,单元格中尽量少使用动画 3.图片加载使用异步加载 4.滑动时不加载图片,停止滑动时开始加载 5.单元格中的内容可以在自定义cell类中的drawRect方法内自己绘制 6.如非必要,减少reloadData全部cell,只reloadRowAtIndexPaths 7.如果cell是动态行高,计算出高度后缓存 8.cell高度固定的话直接使用cell.rowHeight设置高度…
1.根据颜色生成一张图片 /** 根据颜色生成一张图片 @param color 颜色进制 UIColor类型 @return 一张UIImage图片 */ + (UIImage *)createImageWithColor:(UIColor *)color { CGRect rect = CGRectMake(0.0f, 0.0f, 1.0f, 1.0f); //宽高 1.0只要有值就够了 UIGraphicsBeginImageContext(rect.size); //在这个范围内开启一段…
一:图片轮播器效果如图:能实现自动轮播,到最后一页时,轮播回来,可以实现拖拽滚动 二:代码: #import "ViewController.h" ; @interface ViewController ()<UIScrollViewDelegate> /*scrollView*/ @property (nonatomic,weak)UIScrollView *scroll; /*pageControl*/ @property (nonatomic,weak)UIPageC…
一行代码搞定图片选择 // // gzhPhotoManager.h // 图片选择 // // Created by 郭志贺 on 2020/5/26. // Copyright © 2020 郭志贺. All rights reserved. // #import <Foundation/Foundation.h> #import "ViewController.h" NS_ASSUME_NONNULL_BEGIN @protocol BFPhotoManagerDel…
本期 fir.im Weekly 精选了一些iOS 开发工具和动画源码分享,希望每个开发者能专注效率.实用.灵感.  iOS开发工具--如何优化ipa包大小 @iOS程序犭袁 推荐了关于"如何优化ipa包大小"两个工具,一篇博文. 工具1:Unused,找出项目中未使用的图片 地址 工具2:ImageOptim 图片保真压缩 地址  文章:统计项目中图片使用情况 地址 17个提升iOS开发效率的必备工具 每个 iOSer 都有自己顺手的开发工具,好的开发工具让人更专注于项目并写出更好的…
--UIKit之UIScrollView 概述 UIKit框架中有大量的控件供开发者使用,在iOS开发中不仅可以直接使用这些控件还可以在这些控件的基础上进行扩展打造自己的控件.在这个系列中如果每个控件都介绍一遍确实没有必要,所谓授人以鱼不如授人以渔,这里会尽可能让大家明白其中的原理,找一些典型的控件进行说明,这样一来大家就可以触类旁通.今天我们主要来看一下UIScrollView的内容: UIView UIScrollView 实战--图片浏览器 UIView 在熟悉UIScrollView之前…
iOS开发UI篇—简单的浏览器查看程序 一.程序实现要求 1.要求 2. 界面分析 (1) 需要读取或修改属性的控件需要设置属性 序号标签 图片 图片描述 左边按钮 右边按钮 (2) 需要监听响应事件的对象,需要添加监听方法 左边按钮 右边按钮 二.实现基本功能的程序 // // YYViewController.m // 03-图片浏览器初步 // // Created by apple on 14-5-21. // Copyright (c) 2014年 itcase. All rights…
iOS开发UI篇—UITableviewcell的性能问题 一.UITableviewcell的一些介绍 UITableView的每一行都是一个UITableViewCell,通过dataSource的 tableView:cellForRowAtIndexPath:方法来初始化每⼀行 UITableViewCell内部有个默认的子视图:contentView,contentView是UITableViewCell所显示内容的父视图,可显示一些辅助指示视图 辅助指示视图的作⽤是显示一个表示动作的…
TableView相信只要是做iOS开发的就不会陌生,目前大多数iOS的app都是采用TabBar+NavigationBar+TableViewController这一主流框架, 既然用的这么频繁,肯定就会在开发过程中碰到一些问题--比如屏幕掉帧.卡顿等现象.这些现象大幅度的降低了用户的性能体验,并提高了crash的频率. 因此如何能优化好tableView就非常考验程序猿们的功底了. 本猿~啊呸,只要开发公司项目的时候就会遇到这类问题,当快速滑动tableView并且cell中有大量图片和其…
IOS开发中UITableView(表视图)的滚动优化及自定义Cell IOS 开发中UITableView是非常常用的一个控件,我们平时在手机上看到的联系人列表,微信好友列表等都是通过UITableView实现的.UITableView这个控件中的列表的每一行是一个cell,当UITableView中cell数量特别大的时候,由于每次都需要alloc分配内存并初始化,会导致app运行不流畅,所以可以使用苹果提供的几个方法进行优化,我把这个过程记录下来供自己以后查阅. 当然,既然说到优化,那我们…
延续:iOS开发基础-图片切换(1),对(1)里面的代码进行改善. 在 ViewController 类中添加新的数组属性:  @property (nonatomic, strong) NSArray *infoArray; //存放图片信息 通过 self.infoArray 的 getter 方法对其实现初始化(懒加载),其中代码中的 _infoArray 不能用 self.infoArray 替换: //infoArray的get方法 - (NSArray *)infoArray { N…
一.程序功能分析 1)点击左右箭头切换图片.序号.描述: 2)如果是首张图片,左边箭头失效: 3)如果是最后一张图片,右边箭头失效. 二.程序实现 定义确定图片位置.大小的常量: //ViewController.m CGFloat const POTOIMAGEWIDTH = 120.0; //图片宽度 CGFloat const POTOIMAGEHEIGHT = 180.0; //图片高度 CGFloat ; //图片X轴坐标 CGFloat ; //图片Y轴坐标 定义相关的属性: //V…
最近在微博上看到一个很好的开源项目VVeboTableViewDemo,是关于如何优化UITableView的.加上正好最近也在优化项目中的类似朋友圈功能这块,思考了很多关于UITableView的优化技巧,相信这块是难点也是痛点,所以决定详细的整理下我对优化UITableView的理解. UITableView作为iOS开发中最重要的控件之一,其中的实现原理很是考究.Apple在这块的优化水平直接决定了iOS的体验能甩安卓几条街,哈哈,扯淡扯多了...好了,废话不多说,直接进入主题.首先来谈谈…