11.01-11.15 字符串與數字轉換/十六進制顏色轉RGB/URLSchemes使用/小處注意記錄

  1. 字符串與數字的互換
NSString *newString = @"6666";

1、字符串轉int
int intString = [newString intValue];

2int轉字符串
NSString *stringInt = [NSString stringWithFormat:@"%d",intString];

3、字符串轉float
 float floatString = [ newString floatValue];

6float轉字符串
NSString *stringFloat = [NSString stringWithFormat:@"%f",intString];
  1. 十六進制顏色轉換RGB
    實現方法 :
.h文件中
#import <UIKit/UIKit.h>

@interface UIColor (ColorChange)

// 顏色轉換:iOS中(以#開頭)十六進制的顏色轉換爲UIColor(RGB) ,類方法調用
+ (UIColor *) colorWithHexString: (NSString *)color;

@end
.m文件中
#import "UIColor+ColorChange.h"

@implementation UIColor (ColorChange)

+ (UIColor *) colorWithHexString: (NSString *)color
{
    NSString *cString = [[color stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] uppercaseString];

    // String should be 6 or 8 characters
    if ([cString length] < 6) {
        return [UIColor clearColor];
    }
    // 判斷前綴
    if ([cString hasPrefix:@"0X"])
        cString = [cString substringFromIndex:2];
    if ([cString hasPrefix:@"#"])
        cString = [cString substringFromIndex:1];
    if ([cString length] != 6)
        return [UIColor clearColor];
    // 從六位數值中找到RGB對應的位數並轉換
    NSRange range;
    range.location = 0;
    range.length = 2;
    //R、G、B
    NSString *rString = [cString substringWithRange:range];
    range.location = 2;
    NSString *gString = [cString substringWithRange:range];
    range.location = 4;
    NSString *bString = [cString substringWithRange:range];
    // Scan values
    unsigned int r, g, b;
    [[NSScanner scannerWithString:rString] scanHexInt:&r];
    [[NSScanner scannerWithString:gString] scanHexInt:&g];
    [[NSScanner scannerWithString:bString] scanHexInt:&b];

    return [UIColor colorWithRed:((float) r / 255.0f) green:((float) g / 255.0f) blue:((float) b / 255.0f) alpha:1.0f];
}
@end

使用,直接調取

self.view.backgroundColor=[UIColor colorWithHexString:@"#6cabdf"];
  1. URL Schemes使用詳解
    http://sspai.com/31500
    http://www.jianshu.com/p/d64b9be5ad64
    iOS–從一個app拉起(跳轉至)另一個app
    http://www.jianshu.com/p/6dc32ea29729

http://www.jianshu.com/p/d64b9be5ad64
app間跳轉並傳遞參數
http://www.jianshu.com/p/6dc32ea29729
//app跳轉
http://www.jianshu.com/p/46b2c32c857b

  1. 刪除Assets.xcassets文件夾中的照片方法
    show in finder,刪除要刪除的即可
    5.button設置背景圖片的辦法
 [button setBackgroundImage:[UIImage imageNamed:@"圖片名稱.png"] forState:(UIControlStateNormal)];

這是正確的方式,圖片背景會正常展示;

下面的方式

            button.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"圖片名稱.png"]];
//這句代碼不會有報黃或者報紅,但是展示的圖片是平鋪在背景上的,會有好幾個重複,不能正常展示,所以要正確使用上面的方法;
  1. 計算某個控件的大小時,有的計算表達方式可能不能正常使用
    舉個栗子:
    `CGFloat heighButton = widthButton / 6 * 5 + 10;
    //這樣寫的結果計算是正確的,heighButton的大小是widthButton大小的六分之五並多10個單位
    但是如果用我們理解的數學中相等的表達方式這樣寫的話:
    CGFloat heighButton = widthButton * (5 / 6) + 10;
    //用widthButton直接乘以六分之五,結果就會不正確.
    還沒有找到解釋的原因, 要注意!!

`

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章