美文网首页
iOS 开发小知识

iOS 开发小知识

作者: junedeyu | 来源:发表于2019-04-28 14:08 被阅读0次

    1、代码方式调整屏幕亮度

    // brightness属性值在0-1之间,0代表最小亮度,1代表最大亮度

    [[UIScreen mainScreen] setBrightness:0.5];

    2、解决openUrl延时问题

    // 方法一

    dispatch_async(dispatch_get_main_queue(), ^{

        UIApplication *application = [UIApplication sharedApplication];

        if ([application respondsToSelector:@selector(openURL:options:completionHandler:)]) {

            [application openURL:URL options:@{}

               completionHandler:nil];

        } else {

            [application openURL:URL];

        }

        });

    // 方法二

    [self performSelector:@selector(redirectToURL:) withObject:url afterDelay:0.1];

    - (void) redirectToURL

    {

    UIApplication *application = [UIApplication sharedApplication];

        if ([application respondsToSelector:@selector(openURL:options:completionHandler:)]) {

            [application openURL:URL options:@{}

               completionHandler:nil];

        } else {

            [application openURL:URL];

        }

    }

    3、状态栏菊花

    在状态栏增加网络请求的菊花,类似safari加载网页的时候状态栏菊花

    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;

    4、让手机震动一下

    #import <AudioToolbox/AudioToolbox.h>

    // #import <UIKit/UIKit.h>  

    - (void)vibrate   {     

      AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

       } 

    AudioServicesPlayAlertSound(kSystemSoundID_Vibrate);

    AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);

    5、生成随机数

    有时候我们需要在程序中生成随机数,但是在Objective-c中并没有提供相应的函数,好在C中提供了rand()、srand()、random()、arc4random()几个函数。那么怎么使用呢?下面将简单介绍:

    1.获取一个随机整数范围在:[0,100)包括0,不包括100

    int x = arc4random() % 100;

    2.获取一个随机数范围在:[500,1000),包括500,包括1000

    int y = (arc4random() % 501) + 500;

    3.获取一个随机整数,范围在[from,to),包括from,包括to

    -(int)getRandomNumber:(int)from to:(int)to

    {

        return (int)(from + (arc4random() % (to – from + 1)));

    }

    6、点击Button 出现 拷贝

    [self.btnContentbecomeFirstResponder];

           UIMenuController*menu = [UIMenuControllersharedMenuController];

            [menusetTargetRect:self.btnContent.frameinView:self.btnContent.superview];

    [menu setMenuVisible:YESanimated:YES];

    7、获取手机信息

    NSDictionary*infoDictionary = [[NSBundlemainBundle]infoDictionary];

       //当前应用名称

       NSString*appCurName = [infoDictionaryobjectForKey:@"CFBundleDisplayName"];

       //当前应用软件版本 比如:1.0.1

       NSString*appCurVersion = [infoDictionaryobjectForKey:@"CFBundleShortVersionString"];

       //当前应用版本号码  int类型 构建版本如:20151128

       NSString*appCurVersionNum = [infoDictionaryobjectForKey:@"CFBundleVersion"];

       //手机别名:用户定义的名称

       NSString* userPhoneName = [[UIDevicecurrentDevice]name];

       //设备名称

       NSString* deviceName = [[UIDevicecurrentDevice]systemName];

       //手机系统版本9.1

       NSString* phoneVersion = [[UIDevicecurrentDevice]systemVersion];

       //手机型号iPhone

       NSString* phoneModel = [[UIDevicecurrentDevice]model];

       //地方型号 (国际化区域名称)

     NSString* localPhoneModel = [[UIDevicecurrentDevice]localizedModel];

    8、禁止锁屏

    默认情况下,当设备一段时间没有触控动作时,iOS会锁住屏幕。但有一些应用是不需要锁屏的,比如视频播放器。

    [UIApplication sharedApplication].idleTimerDisabled = YES;

    [[UIApplication sharedApplication] setIdleTimerDisabled:YES];

    9、比较两个UIImage是否相等

    - (BOOL)image:(UIImage *)image1 isEqualTo:(UIImage *)image2

    {

        NSData *data1 = UIImagePNGRepresentation(image1);

        NSData *data2 = UIImagePNGRepresentation(image2);

        return [data1 isEqual:data2];

    }

    10、解决当UIScrollView上有UIButton的时候,触摸到button滑动不了的问题

    // 子类化UIScrollView,并重写以下方法

    - (instancetype)initWithFrame:(CGRect)frame {

        if (self = [super initWithFrame:frame]) {

            self.delaysContentTouches = NO;

        }

        return self;

    }

    - (BOOL)touchesShouldCancelInContentView:(UIView *)view {

        if ([view isKindOfClass:UIButton.class]) {

            return YES;

        }

        return [super touchesShouldCancelInContentView:view];

    }

    相关文章

      网友评论

          本文标题:iOS 开发小知识

          本文链接:https://www.haomeiwen.com/subject/xjcdnqtx.html