ios開發代碼

1。iOS  謂詞過濾 (ios 謂詞)

    //搜索用謂詞過濾數組

    NSArray * arrMy=@[@"肖1",@"肖2",@"王五",@"李四",@"肖3",@"王五",@"劉七"];
    NSString  * strg=@"肖";
    NSPredicate * fiecate=[NSPredicate predicateWithFormat:@"SELF CONTAINS %@",strg];
    NSArray * arr3=[arrMy filteredArrayUsingPredicate:fiecate];

    NSLog(@"%@",arr3);


2.如何刪掉所有subView
http://stackoverflow.com/questions/2156015/remove-all-subviews

常用方法就是遍歷view的subviews,然後一個個移除,這裏介紹的[someNSView setSubviews:[NSArray array]] 和 [[someUIView subviews] makeObjectsPerformSelector:@selector(removeFromSuperview)]都能達到同樣的目的。


3.iOS 7上給View截圖的方法

https://developer.apple.com/library/ios/qa/qa1817/_index.html#//apple_ref/doc/uid/DTS40014134

- (UIImage *)snapshot:(UIView *)view
{
    UIGraphicsBeginImageContextWithOptions(view.bounds.size, YES, 0);
    [view drawViewHierarchyInRect:view.bounds afterScreenUpdates:YES];
    UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
 
    return image;
}


4.如何判斷iOS App是否調用了特定的API

第一種方法判斷是否使用了advertisingIdentifier在應用工程目錄下查找

find . | grep -v .svn  | grep "\.a" | grep -v "\.app" | xargs grep advertisingIdentifier


第二種方法判斷是否使用了advertisingIdentifier。

在編譯好的包目錄下輸入一下命令

把如下命令中AppName換成你的應用名稱,otool -v -s __TEXT __objc_methname AppName | grep advertisingIdentifier


5.Synchronizing Around A Class

在同步的時候一般都是用 @synchronized (self),但是對類方法,特別是在基類中定義的類方法,這樣寫有問題,應該寫成類似@synchronized ([SomeClassName class])這樣

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