1.mac下刪除項目目錄中所有的.svn文件夾
通過下面這個方式可以成功刪除(以嘗試)
sudo find /Users/justfly/Documents/workspace/justSVN -name ".svn" -exec rm -r {} ;
其中:
/Users/justfly/Documents/workspace/justSVN 是自己的項目路徑
2.xcode8調試 self為nil,并且斷點不按步驟亂跳
在Project的Build Settings中把Optimization Level 設置成 None 即可。
3.如何讓編譯器忽略一些警告
處女座必備:
1、方法啟用告警
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
//code這里插入相關的代碼
#pragma clang diagnostic pop
2.不兼容指針類型
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"
//code這里插入相關的代碼
#pragma clang diagnostic pop
3.retain cycle
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-retain-cycles"
//code這里插入相關的代碼
#pragma clang diagnostic pop
4.未使用變量
#pragma clang diagnostic push
#pragma clang diagnostic ignored "--Wunused-variable"
//code這里插入相關的代碼
#pragma clang diagnostic pop
5.selector中使用了不存在的方法名(在使用反射機制通過類名創建類對象的時候會需要的)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wundeclared-selector"
//code這里插入相關的代碼
#pragma clang diagnostic pop
4.項目中如何跳轉到指定的頁面
UINavigationController * ddd = (UINavigationController*)[[UIApplication sharedApplication].delegate window].rootViewController;
NSArray *viewControllers = ddd.viewControllers;
RCTabBarController * dsc = [viewControllers objectAtIndex:0];
[dsc selectExchangeShowPage:2 industryCode:goodsCateIndustryCode];
5.在APP推廣的時候,推廣公司想要獲取你公司的APP包,但是你沒有推廣公司的APP開發賬號,這個時候可以打包自己應用的Archives文件給對方,對應目錄是:
6.在swift中集成友盟統計
1.在自己代碼中運行成功的集成過程:1按照集成文檔第一步在工程中添加.framework,在Link Binary With Libraries-->Add Other添加.framework
2.在自己的橋接文件中引入頭文件:#import <UMMobClick/MobClick.h> 并編譯
3.didFinishLaunchingWithOptions添加如下代碼
在APP代理的didFinishLaunchingWithOptions里面初始化代碼為:
MobClick.setLogEnabled(true)
let umConfig = UMAnalyticsConfig.init()
umConfig.appKey = self.umAppKey
MobClick.start(withConfigure: umConfig)
7.如何讓tableView滾動到指定的位置
//創建一個指定的NSIndexPath
NSIndexPath *index = [NSIndexPath indexPathForRow:self.dataRow inSection:self.dataCol];
//滾動到指定的位置
[_tableView selectRowAtIndexPath:index animated:NO scrollPosition:UITableViewScrollPositionTop];
//或者:
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:index] atScrollPosition:UITableViewScrollPositionTop animated:YES];
8.iOS鍵盤常用操作
一、鍵盤風格,UIKit框架支持8種風格鍵盤。
typedef enum {
UIKeyboardTypeDefault, // 默認鍵盤:支持所有字符
UIKeyboardTypeASCIICapable, // 支持ASCII的默認鍵盤
UIKeyboardTypeNumbersAndPunctuation, // 標準電話鍵盤,支持+*#等符號
UIKeyboardTypeURL, // URL鍵盤,有.com按鈕;只支持URL字符
UIKeyboardTypeNumberPad, //數字鍵盤
UIKeyboardTypePhonePad, // 電話鍵盤
UIKeyboardTypeNamePhonePad, // 電話鍵盤,也支持輸入人名字
UIKeyboardTypeEmailAddress, // 用于輸入電子郵件地址的鍵盤
} UIKeyboardType;
//用法用例:
textView.keyboardtype= UIKeyboardTypeNumberPad;
二、鍵盤外觀
typedef enum {
UIKeyboardAppearanceDefault, // 默認外觀:淺灰色
UIKeyboardAppearanceAlert, //深灰/石墨色
} UIKeyboardAppearance;
//用法用例:
textView.keyboardAppearance=UIKeyboardAppearanceDefault;
三、回車鍵
typedef enum {
UIReturnKeyDefault, //默認:灰色按鈕,標有Return
UIReturnKeyGo, //標有Go的藍色按鈕
UIReturnKeyGoogle, //標有Google的藍色按鈕,用于搜索
UIReturnKeyJoin, //標有Join的藍色按鈕
UIReturnKeyNext, //標有Next的藍色按鈕
UIReturnKeyRoute, //標有Route的藍色按鈕
UIReturnKeySearch, //標有Search的藍色按鈕
UIReturnKeySend, //標有Send的藍色按鈕
UIReturnKeyYahoo, //標有Yahoo!的藍色按鈕,用于搜索
UIReturnKeyDone, //標有Done的藍色按鈕
UIReturnKeyEmergencyCall, //緊急呼叫按鈕
} UIReturnKeyType;
//用法用例:
textView.returnKeyType=UIReturnKeyGo;
四、自動大寫
typedef enum {
UITextAutocapitalizationTypeNone, //不自動大寫
UITextAutocapitalizationTypeWords, //單詞首字母大寫
UITextAutocapitalizationTypeSentences, //句子首字母大寫
UITextAutocapitalizationTypeAllCharacters, //所有字母大寫
} UITextAutocapitalizationType;
//用法用例:
textField.autocapitalizationType = UITextAutocapitalizationTypeWords;
五、自動更正
typedef enum {
UITextAutocorrectionTypeDefault,//默認
UITextAutocorrectionTypeNo,//不自動更正
UITextAutocorrectionTypeYes,//自動更正
} UITextAutocorrectionType;
//用法用例:
textField.autocorrectionType = UITextAutocorrectionTypeYes;
六、安全文本輸入
textView.secureTextEntry=YES;
開啟安全輸入主要是用于密碼或一些私人數據的輸入,此時會禁用自動更正和自此緩存。
七、退出鍵盤最常用的兩種方式
resignFirstResponder
當叫出鍵盤的那個控件(第一響應者)調用這個方法時,就能退出鍵盤
endEditing
只要調用這個方法的控件內部存在第一響應者,就能退出鍵盤
參考資料鏈接
9.如何自定義tableView右邊的錨點View
大家都知道tableView只要實現了代理方法:- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView就能夠實現右邊的錨點View,但是你會發現系統默認的View會很擠,而且字體、間距都不好設置,所以博主就考慮自己去自定義這一功能。效果圖如下:
下面列舉出實現該功能的核心代碼:
//屬性:
/** 友側的錨點View */
@property (nonatomic, weak)UIView *rightView;
/** 右側的錨點View顯示的數組數據 */
@property (nonatomic, strong)NSMutableArray *rightViewArray;
//方法:
//懶加載右邊的錨點View
- (UIView *)rightView{
if (_rightView == nil) {
if (self.rightViewArray.count <=0) {
return nil;
}
UIView *rightView = [[UIView alloc] initWithFrame:CGRectMake(SCREEN_WIDTH - 15, navigationBarHeigth, 15, SCREEN_HEIGHT - navigationBarHeigth)];
CGFloat W = rightView.LXHWidth;
CGFloat H = rightView.LXHHeight * 0.7 / self.rightViewArray.count;
CGFloat Y = (rightView.LXHHeight - rightView.LXHHeight * 0.7) * 0.5;
CGFloat X = 0;
for (int i = 0; i < self.rightViewArray.count; ++i) {
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(X, Y + H * i, W, H)];
[rightView addSubview:btn];
[btn setTitle:self.rightViewArray[i] forState:UIControlStateNormal];
[btn addTarget:self action:@selector(rightViewBtnClick:) forControlEvents:UIControlEventTouchUpInside];
btn.titleLabel.font = [UIFont systemFontOfSize:12.0];
btn.titleLabel.textAlignment = NSTextAlignmentCenter;
[btn setTitleColor:kUIColorFromRGB(0x1e82d2) forState:UIControlStateNormal];
}
[self.view insertSubview:rightView atIndex:0];
_rightView = rightView;
}
[self.view bringSubviewToFront:_rightView];
return _rightView;
}
//右邊錨點View需要顯示的數據
- (NSMutableArray *)rightViewArray{
_rightViewArray = [NSMutableArray arrayWithArray:[self.dataArray valueForKeyPath:@"title"]];
return _rightViewArray;
}
//右邊按鈕被點擊的時候tableView滾動到特定位置
- (void)rightViewBtnClick:(UIButton *)btn{
NSInteger index = [self.rightView.subviews indexOfObject:btn];
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:index] atScrollPosition:UITableViewScrollPositionTop animated:YES];
}
//在tableView默認實現錨點VieW的方法里面替換成自己想要顯示的View
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{
if (self.headView.searchTextFiled.text.length <= 0) {
// 默認寫法
// return [self.dataArray valueForKeyPath:@"title"];
//自定義
self.rightView.hidden = NO;
return @[@" "];
}else{
//之所以會有隱藏式需求想要在上面搜索欄搜索的時候隱藏掉右邊的錨點View
self.rightView.hidden = YES;
}
return nil;
}
就這樣11月份又過去了,為了心中的夢想加油吧。_