oc基础
dream9393
别低头,王冠会掉,别哭泣,敌人会笑
展开
-
iOS TextView与HTML结合以及设置超链接
有时候后端传值一个HTML的字符串,要前台展示,实现这一方法用UILable和UITextView均可以实现,但是要实现超链接的点击,我研究出用UITextView更方便,实现效果如下:代码如下: 添加代理 <UITextViewDelegate>//html字符串NSString * htmlStr = @"Enter <a href=\"https:/...原创 2018-07-26 18:26:31 · 2866 阅读 · 0 评论 -
iOS 某一个界面实现强制横屏
需求: 让push的ViewController界面强制横屏一、配置 二、添加强制横屏方法#pragma mark -- 强制转换横屏- (void)orientationToPortrait:(UIInterfaceOrientation)orientation { SEL selector = NSSelectorFromString(@"setOrientation:");原创 2017-07-18 15:05:05 · 2194 阅读 · 0 评论 -
iOS 字典存入int型数据
注意:字典只能当OC对象,不能放C的基础属性,加@()就是变成NSNumber类型 问题:后台需要上传如下形式的字段"Member_Id": 8,正确操作方式 NSDictionary *dic = @{@"Membership_Id1":@(8)};//解析NSString *Member_IdStr = @"8"; int Member_Id = [Member_IdStr intVal原创 2017-06-26 17:32:36 · 9516 阅读 · 0 评论 -
UISwitch控件修改大小。
// 修改控件的大小,不能设置frame,只能用缩放比例_switch0.transform = CGAffineTransformMakeScale(0.75, 0.75);原创 2017-06-13 18:07:26 · 10186 阅读 · 0 评论 -
ios搜索(可实现模糊搜索 支持拼音检索 首字母等)
一、搜框中输入关键字的事件响应-(void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{ NSLog(@"输入的关键字是---%@---%lu",searchText,(unsigned long)searchText.length); //需要事先清空存放搜索结果的数组 [sel原创 2017-06-13 18:05:21 · 9514 阅读 · 0 评论 -
iOS一个Lable显示不同字体,不同颜色
NSMutableAttributedString *str = [[NSMutableAttributedString alloc] initWithString:@"Using NSAttributed String"];//设置不同颜色[str addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] rang原创 2017-07-04 15:32:52 · 322 阅读 · 0 评论 -
iOS在某个界面不显示状态栏
在该界面的控制器中添加以下代码- (BOOL)prefersStatusBarHidden { return YES;}原创 2017-06-12 14:52:50 · 1976 阅读 · 0 评论 -
iOS键盘删除健删除表情
1,判断要删除的是否是表情- (BOOL)stringContainsEmoji:(NSString *)string{ NSMutableArray *arr = [NSMutableArray array]; [string enumerateSubstringsInRange:NSMakeRange(0, [string length]) options:NSStringEn原创 2017-06-12 10:36:11 · 1698 阅读 · 0 评论 -
iOS webview与JS的交互;以及修改cookie、header头
一、webview与Js的交互#import "webView.h"#import <JavaScriptCore/JavaScriptCore.h>//系统支持库@protocol JSObjcDelegate <JSExport>//定义web与JS交互的协议-(void)goToNextActivity:(NSString *)urlStr;//JS需要调用的方法,参数可有可无,根据需要转载 2017-06-22 16:57:14 · 389 阅读 · 0 评论 -
iOS 输出打印双引号
NSString * testStr = @"Hello,\"你好\""; NSLog(@"%@",testStr); 其输出结果为://输出结果为:Hello,”你好”原创 2017-06-20 10:39:35 · 5359 阅读 · 0 评论 -
令UITableView滚动到指定位置
//获取到需要跳转位置的行数NSIndexPath *scrollIndexPath = [NSIndexPath indexPathForRow:10 inSection:0];//滚动到其相应的位置[[self tableView] scrollToRowAtIndexPath:scrollIndexPath atScrollPosition:UITableViewScrol原创 2017-06-20 10:32:43 · 6408 阅读 · 0 评论 -
保存我的二维码信息为整张图片
如图:要实现保存二维码包括后边白框的区域《1》首先需要引入系统库 点击TARGET – Build Phases – Link Binary With Libraries 然后点击+ 搜索到下图的库,并添加 《2》代码如下 //backView 为所定义的白色ViewCGRect screenRect = [backView bounds]; UIGraphicsBeginImag原创 2017-06-28 16:40:45 · 1083 阅读 · 0 评论 -
输入框UITextField禁止输入空格
1,遵循UITextField的代理方法 2,实现代理方法- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{ NSString *tem = [[string componentsSepa原创 2017-06-07 11:02:25 · 3416 阅读 · 0 评论 -
iOS取CGFloat的小数点后2位
CGFloat f = 123.1234567890; NSString *str=[NSString stringWithFormat:@”%.2f”, f]; 如上所述:字符串格式化,格式出输入%.2f ,及表示两位小数如果取后3位即 %.3f 后4位即 %.4f原创 2017-06-05 17:22:26 · 14019 阅读 · 0 评论 -
iOS判断一段字符串长度(汉字2字节)
-(NSUInteger)textLength: (NSString *) text{ NSUInteger asciiLength = 0; for (NSUInteger i = 0; i < text.length; i++) { unichar uc = [text characterAtIndex: i]; asciiLength += isasc转载 2017-05-27 18:17:29 · 5430 阅读 · 0 评论 -
iOS 第三方应用中打开自己的文件(UIDocumentInteractionController)
实现如下图所示: 在你的.h文件中添加 UIDocumentInteractionControllerDelegate然后在.m文件中,新建一个方法,用来响应你点击按钮弹出时弹出popView,其中会罗列可打开当前文件的其他应用 我的方法如下-(void)openDocumentIn{ documentController = [UIDocumentInteractionControlle原创 2017-05-25 18:52:08 · 1835 阅读 · 0 评论 -
iOS 从某一界面pop回指定界面
1,如果是tabbar的不通controller self.tabBarController.selectedIndex = 0;//选择所在的tabbar [self.navigationController popToViewController:self.navigationController.viewControllers[0] animated:YES];//pop回某一指定界原创 2017-04-24 16:13:34 · 1003 阅读 · 0 评论 -
修改PickerView选中行背景色
实现图中效果,背景色为淡灰色,去掉上下两条线创建UIPickerView的类 作为基类//.h文件#import <UIKit/UIKit.h>@interface BasePickerView : UIPickerView@end//.m文件#import "BasePickerView.h"@implementation BasePickerView{ UIView *_sel原创 2017-07-22 17:51:03 · 5129 阅读 · 0 评论 -
iOS中Navbar设置渐变色效果
- (void) viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; //状态栏高亮 self.navigationController.navigationBar.barStyle = UIStatusBarStyleLightContent; //导航渐变色 CAGradientLa原创 2017-07-19 17:35:05 · 2385 阅读 · 2 评论 -
iOS的UICollectionView添加header
实现效果 一、创建UICollectionView#import "HomeViewController.h" #import "ConstomCell.h" static NSString *headerViewIdentifier = @"hederview"; @interface HomeViewController ()<UICollectionViewDataSource,UI转载 2017-07-19 18:59:18 · 961 阅读 · 0 评论 -
ios 友盟分享提示UrlSchema Fail Code=2007 (UMSocialPlatformErrorType_CheckUrlSchemaFail)
报错原因:urlscheme没有设置设置步骤:1,打开项目的Target - Info - URL Types 2,点击+ 添加 identifier 和 URL Schemes 如下图所示:...原创 2018-03-15 17:09:11 · 3473 阅读 · 0 评论 -
iOS截屏后仿今日头条实现一键分享
实现如上图效果1,监听截图产生事件 [[NSNotificationCenter defaultCenter] addObserver:selfselector:@selector(userDidTakeScreenshot:)name:UIApplicationUserDidTakeScreenshotNotification object:nil];2,获取截取到的图片//返回截取到的原创 2017-11-27 20:22:58 · 2465 阅读 · 0 评论 -
代码创建UICollectionView(带分组header)
1,在viewController中实现collectionView的三个协议<UICollectionViewDataSource,UICollectionViewDelegate,UICollectionViewDelegateFlowLayout>2,创建cell//.h#import <UIKit/UIKit.h>#import "ListModel.h"@interface AppL原创 2017-11-14 18:16:43 · 2469 阅读 · 1 评论 -
iOS 多个标签动态排列
如上图所示:自定义标签,自行排列,可控制边距,行距,列举,实现整齐的自由排列,话不多说,看代码//.m主页面#import "ViewController.h"#import "TagsFrame.h"@interface ViewController (){ TagsFrame *_frame; NSArray *_tagsArray;}@end@implementati原创 2017-11-17 17:29:53 · 4685 阅读 · 0 评论 -
用keychain保存用户的账号,密码,uuid
1.keychain(钥匙串)的功能目前keychain的主要功能就是帮助用户安全地记住他的密码,keychain保存的密码文件都是经过加密的,其它人不能直接通过打开keychain的文件获得保存在keychain中的密码。在mac上可以安装钥匙串应用,一般情况下只有用户正确输入了mac系统的用户名和密码才能查看到用户保存在keychain中的密码。Apple还提供了使用keychain保存密码的A原创 2017-10-16 20:25:30 · 881 阅读 · 0 评论 -
NSMapTable
1,定义 NSMapTable对于NSDictionary来说,有几点特别的地方,其中表现在它可以指定key/value是需要strong,weak,甚至是copy,如果使用的是weak,当key、value在被释放的时候,会自动从NSMapTable中移除这一项。NSMapTable中可以包含任意指针,使用指针去做检查操作2. NSMapTable与NSDictionary《1》NSDcitio原创 2017-10-31 20:32:51 · 2047 阅读 · 1 评论 -
iOS原生与H5双向交互总结
1,单向通信时候:webView可以利用代理方法截取JS,来调用原生方法其代理方法如下:- (BOOL)webView:(UIWebView*)webView shouldStartLoadWithRequest:(NSURLRequest*)request navigationType:(UIWebViewNavigationType)navigationType2,双向通信:即JS调用原生方法之原创 2017-09-12 19:42:34 · 696 阅读 · 0 评论 -
iOS11新增技术功能总结
根据相关资料进行的总结:1,iOS11彻底废弃32位APPiOS11后,如果从iTunes同步32位的APP到你的手机,只会留下一个占位符APP,无法运行2,第三方应用 <1> 注意:第三方键盘如果没有选择允许完全访问有可能会出现崩溃问题(iOS10之后苹果支持第三方键盘,具体设置在通用——键盘选项中) <2> 如果是Skyce通过可能会让音频播放掉线(静音)3,ARKit框架<1> 在调试原创 2017-09-20 15:57:04 · 1553 阅读 · 0 评论 -
iOS 去掉UITableView风格为group时候的最顶部的空白距离
CGRect frame=CGRectMake(0, 0, 0, CGFLOAT_MIN); self.tableView.tableHeaderView=[[UIView alloc]initWithFrame:frame];CGFLOAT_MIN 这个宏表示 CGFloat 能代表的最接近 0 的浮点数,64 位下大概是 0.00(300左右个)0225 这个样子 这样写单纯的为了避免一转载 2017-09-13 16:53:28 · 1028 阅读 · 0 评论 -
iOS中文文件名传输或url中存在汉字解决办法(urldecode解码的问题)
错误出现的场景: 1》在app中经常遇到中文文件名传输报错的问题,转换成data为nil的情况,可能是因为客户端需要解码urlDecode2》在url中存在汉字,或者需要上传图片,那么就得考虑urlEncode(否则会出现网址不对)3》接收到服务器返回的一些信息可能也存在同样问题,这时服务器可能会返回urlEcode,客户端就需要解码urlDecode上代码:《1》iOS的URLEncodedSt原创 2017-08-14 19:11:44 · 4193 阅读 · 0 评论 -
Cannot assign to 'self' outside of a method in the init family
当我们重写父类的init方法时不注意将init后面的第一个字母写成了小写,在这个方法里面又调用父类的初始化方法(self = [super init];)时会报错错误信息如下:error:Cannot assign to ‘self’ outside of a method in the init family原因:只能在init方法中给self赋值,Xcode判断是否为init方法规则:方法返回i原创 2017-08-04 17:57:17 · 799 阅读 · 0 评论 -
iOS拍照后使用该图片(获取照片的ALasset传到相册)
问题: 拍照后,点击选择照片在-(void)imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary *)info 的代理方法中获取了相册的Alasset后,发现为空解决办法:-(void)imagePickerController:(UIImagePicke原创 2017-07-27 16:02:37 · 2725 阅读 · 1 评论 -
IOS10调用相机之后无法退出
实现代理方法-(void)imagePickerControllerDidCancel:(UIImagePickerController *)picker{ [imagePicker dismissViewControllerAnimated:YES completion:nil];//退出}原创 2017-07-27 10:23:55 · 895 阅读 · 0 评论 -
iOS导航栏的隐藏(优化导航出现和隐藏的问题)
- (void) viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; [self.navigationController setNavigationBarHidden:YES animated:animated];}- (void) viewWillDisappear:(BOOL)animated{原创 2017-07-25 19:48:37 · 1145 阅读 · 0 评论 -
iOS拍照之后图片在PC端粘贴后自动旋转90度
问题: iOS拍照发送后 在PC端接收到之后复制粘贴,然后图片选择了90度测试发现, 只要是图片大于2M, 系统就会自动翻转照片原因: 相机拍照后直接取出来的UIimage(用UIImagePickerControllerOriginalImage取出),它本身的imageOrientation属性是3,即UIImageOrientationRight。如果这个图片直接使用则没事,但是如果对它进原创 2017-08-16 10:55:54 · 643 阅读 · 0 评论 -
识别照片中的二维码
经常有功能需求 从相册中发送一个二维码 然后直接识别当前二维码代码如下 //判断是否是二维码 UIImage *srcImage =imageView.image; CIContext *context = [CIContext contextWithOptions:nil]; CIDetector *detector = [CIDetector detector原创 2017-08-01 10:31:31 · 2344 阅读 · 0 评论 -
怎么让self.view的Y从navigationBar下面开始计算
在iOS 7中,苹果引入了一个新的属性,叫做[UIViewController setEdgesForExtendedLayout:],它的默认值为UIRectEdgeAll。当你的容器是navigation controller时,默认的布局将从navigation bar的顶部开始。这就是为什么所有的UI元素都往上漂移了44pt。有时会加上顶部tool bar的高度 20, 20+44 = 64转载 2017-04-24 16:08:38 · 622 阅读 · 0 评论 -
IM聊天的键盘中文输入点击删除键变成英文bug
问题: IM聊天中,中文输入的键盘点击删除键后变成英文bug 因为键盘删除判断删除@好友整体删除,以及删除表情都需要特殊判断解决方法:#pragma mark -- 修改删除键盘的bug- (BOOL)shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{ //输入回车 发送消息 if原创 2017-05-25 11:56:20 · 886 阅读 · 0 评论 -
类似微信的通讯录搜索
一,在当前界面实现搜索功能 使用UISearchController ,在.m文件中调用以下方法 1.设置属性@interface FriendViewController ()<UITableViewDelegate,UITableViewDataSource,UISearchResultsUpdating,UISearchControllerDelegate>{ UITableVi原创 2017-01-11 21:15:03 · 1037 阅读 · 0 评论 -
UIWebView的多级跳转之后的返回
UIWebView存在属性 //是否能返回 @property (nonatomic, readonly, getter=canGoBack) BOOL canGoBack; //是否能进入下一级界面 @property (nonatomic, readonly, getter=canGoForward) BOOL canGoForward; //是否在加载进行中 @property (原创 2017-01-16 14:31:27 · 2979 阅读 · 0 评论