IOS

iOS自定义水平滚动条、进度条

2019-04-27
iOS自定义水平滚动条.进度条,继承UIView,可点击轨道.滑动滑块交互. 先看一下效果图: 简单说一下逻辑,新建一个继承UIView的类,分别给轨道.滑块添加UITapGestureRecognizer点击.UIPanGestureRecognizer滑动手势.获取偏移量,计算控件位置,刷新视图. 下面贴上核心代码: 显示视图,在控制器调用代码: HWSlider *slider = [[HWSlider alloc] initWithFrame:CGRectMake(10, 50, 300

iOS实现截取字符串中汉字功能

2019-04-27
本文实例为大家分享了iOS截取字符串中汉字的具体代码,供大家参考,具体内容如下 写了一个简单的例子,从第一个汉字开始截取字符串.下面贴上代码: #import "ViewController.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; NSArray *array = @[@"03-15_01苹果&q

iOS使用视听媒体框架AVFoundation实现照片拍摄

2019-04-27
用系统自带的视听媒体的框架,AVFoundation实现照片拍摄.相比UIKit框架(UIImagePickerController高度封装),AVFoundation框架让开发者有更大的发挥空间. 首先看一下效果图: 下面贴上核心控制器代码: #import "HWPhotoVC.h" #import <AVFoundation/AVFoundation.h> @interface HWPhotoVC () @property (nonatomic, strong) AV

iOS基于CATransition实现翻页、旋转等动画效果

2019-04-27
基于CATransition实现翻页.旋转.淡化.推进.滑入滑出.立方体.吮吸.波纹等动画效果. 首先看一下效果图: 下面贴上代码: #import <UIKit/UIKit.h> @interface ViewController : UIViewController @end #import "ViewController.h" //获得屏幕的宽高 #define mainW [UIScreen mainScreen].bounds.size.width #define

iOS实现PDF文件浏览功能

2019-04-26
写了一个小Demo,显示本地PDF格式文件,支持翻页.跳页.缩放. 先看一下效果图: iOS开发,显示PDF格式文件方法有很多: 最简单的应该是UIWebView,可以加载本地或网络PDF文件,支持上下滑动浏览.缩放. 优化一点的是用系统的QLPreviewController加载,实现起来也比较方便,支持上下滑动浏览,左后滑动可多PDF文件切换,同时支持原生的分享打印,QLPreviewController支持的文档格式也比较多,如pdf.doc.docx.xls.xlsx.txt.ppt.m

iOS自定义UIDatePicker日期选择器视图

2019-04-26
iOS自定义UIDatePicker日期选择器视图 ,首先看一下效果图: 下面贴上相关代码: ViewController: #import <UIKit/UIKit.h> @interface ViewController : UIViewController @end #import "ViewController.h" #import "HWDatePicker.h" #define mainW [UIScreen mainScreen].boun

iOS自定义UIButton点击动画特效

2019-04-26
借鉴相关资料,整理了一个很有意思的button动画效果,iOS自定义UIButton点击动画特效 先看一下效果图: 下面贴上代码: ViewController: #import <UIKit/UIKit.h> @interface ViewController : UIViewController @end #import "ViewController.h" #import "HWButton.h" #define mainW [UIScreen m

iOS使用音频处理框架The Amazing Audio Engine实现音频录制播放

2019-04-25
iOS 第三方音频框架The Amazing Audio Engine使用,实现音频录制.播放,可设置配乐. 首先看一下效果图: 下面贴上核心控制器代码: #import "ViewController.h" #import <AVFoundation/AVFoundation.h> #import "HWProgressHUD.h" #import "UIImage+HW.h" #import "AERecorder.h&

iOS下拉、上拉刷新控件的封装

2019-04-25
iOS 封装下拉.上拉刷新控件,首先看下效果图: 简单阐述一下:自定义头部.尾部刷新视图,继承UIView,通过KVO监听scrollView的滑动,通过偏移量设置刷新状态,通过修改状态修改scrollView的滚动位置.建一个UIScrollView的分类,添加上拉.下拉刷新及回调的方法,可以让UITableView.UICollectionView直接调用.现在很多应用是在滑动到底部自动进行上拉加载超做,可以在scrollViewDidScroll这个代理方法中手动调用尾部刷新. 下面贴上主

iOS开发教程之单例使用问题详析

2019-04-22
导语 单例(Singletons),是Cocoa的核心模式之一.在iOS上,单例十分常见,比如:UIApplication,NSFileManager等等.虽然它们用起来十分方便,但实际上它们有许多问题需要注意.所以在你下次自动补全dispatch_once代码片段的时候,想一下这样会导致什么后果. 什么是单例 在<设计模式>一书中给出了单例的定义: 单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 单例模式提供了一个访问点,供客户类为共享资源生成唯一实例,并通过它来对共享资源

iOS 10自定义相机功能

2019-04-21
本文实例为大家分享了iOS 10自定义相机功能的具体代码,供大家参考,具体内容如下 直接上代码 // // TGCameraVC.swift // TGPhotoPicker // // Created by targetcloud on 2017/7/25. // Copyright © 2017年 targetcloud. All rights reserved. // import UIKit import AVFoundation import Photos @available(iOS

iOS开发技巧之自定义相机

2019-04-19
最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以.就花时间简单研究了一下相机的自定义. 相机属于系统硬件,这就需要我们来手动调用iPhone的相机硬件,分为以下步骤: 1.首先声明以下对象 #import <AVFoundation/AVFoundation.h> //捕获设备,通常是前置摄像头,后置摄像头,麦克风(音频输入) @property (nonatomic, strong) AVCaptureDevice *device; //AVCaptureD

iOS使用AVFoundation展示视频

2019-04-19
本文实例为大家分享了iOS使用AVFoundation展示视频的具体代码,供大家参考,具体内容如下 // // Capter2ViewController.m // IosTest // // Created by garin on 13-7-19. // Copyright (c) 2013年 garin. All rights reserved. // #import "Capter2ViewController.h" @interface Capter2ViewControlle

iOS扫描二维码实现手势拉近拉远镜头

2019-04-18
在做扫码需求,往往会有放大镜头需求. 苹果提供了AVCaptureConnection中,videoScaleAndCropFactor:缩放裁剪系数,使用该属性,可以实现拉近拉远镜头.再结合手势UIPinchGestureRecognizer,就很简单实现手势拉近拉远镜头. 手势代码 ///记录开始的缩放比例 @property(nonatomic,assign)CGFloat beginGestureScale; ///最后的缩放比例 @property(nonatomic,assign)C

iOS自定义相机实现拍照、录制视频

2019-04-18
本文实例为大家分享了iOS自定义相机实现拍照.录制视频的具体代码,供大家参考,具体内容如下 使用AVFoundation框架. 这里是Demo 首先声明以下对象: #import "CustomeCameraViewController.h" #import <AVFoundation/AVFoundation.h> #import <AssetsLibrary/AssetsLibrary.h> @interface CustomeCameraViewContr

iOS逆向开发之微信自动添加好友功能

2019-04-15
这一次,小程演示怎么让一个APP自动地运行,从而代替手工的操作.同样以"微信"以例,实现在一个微信群里面,对所有的成员,自动地一个一个地发出添加好友的请求. 知识点还是之前介绍的东西,流程方面还是跟踪与最终注入.因为这是一个系列的文章讲解(微信公众号"广州小程" -> 逆向开发),所以读者可以联系前面的文章来理解,用自己的话"翻译"成自己的知识与经验. 本文解决一个问题:如何让第三方程序自动化地运行. (一)批量添加好友的效果 小程使用&q

iOS Xcode自定义代码块及迁移的实现方法

2019-04-15
前言 文中将要介绍以下四点内容 代码块的意义 自定义代码块入口 代码块迁移 代码块的编写 下面话不多说了,来一起看看详细的介绍吧 一 . 意义在于节约时间成本 like 我在编译器键入 strong, 回车 自动生成 @property (nonatomic, strong) <#Class#> *<#object#>; 二 . 如何自定义代码块 如下图所示 选中一行代码右键 crate code snippet 右上角方框快速进入 图1 下图填入描述, 以及快捷方式 图2 三 .

iOS常用调试方法之静态分析详解

2019-04-11
前言 在iOS项目开发过程中,常用到静态分析(Analyze).断点(BreakPoint)和控制台(Console)进行代码调试.本篇文章介绍Xcode常用调试方法之"静态分析". 本文来自360奇舞团QiShare团队投稿. 一.简介 Xcode的静态分析功能是在程序未运行的情况下,对代码的上下文语义.语法.和内存情况进行分析,可以检测出代码潜在的文本本地化问题(Localizability Issue).逻辑问题(Logic error).内存问题(Memery error).数

iOS与Unity交互笔记之参数传递

2019-04-11
1. 调用方法一 Unity调方法传参,有返回值 // Unity代码 [DllImport("__Internal")] // 给iOS传string参数,有返回值,返回值通过iOS的return方法返回给Unity private static extern string getIPv6(string mHost, string mPort) // iOS代码 extern "C" const char * getIPv6(const char *mHost,

如何去掉Xcode工程中某种类型的警告

2019-04-10
问题描述 在我们的项目中,通常使用了大量的第三方代码,这些代码可能很复杂,我们不敢改动他们,可是作者已经停止更新了,当sdk升级或者是编译器升级后,这些遗留的代码可能会出现许许多多的警告,那么我们有没有办法去掉这些烦人的警告,不然一个工程几百个警告,你看着怎么都不爽吧.我们怎么去掉警告呢? 1. 最直接.最一劳永逸.最安全的方式,直接找到警告的那段代码,改为不警告.这个方式最安全. 可是它有一个问题,就是,当我们很多文件都有这种类型的警告的时候,我们就需要改动很多很多的源码了, 对于不是我们写的