iOS push過去的時候界面不能徹底退出編程
解決方法:設置self.view.backgroundcolorapp
1. initWithFrame方法是什麼?ide
initWithFrame方法用來初始化並返回一個新的視圖對象,根據指定的CGRect(尺寸)。字體
2. 何時用initWithFrame方法?spa
簡單的說, 咱們用編程方式申明,建立UIView對象時,使用initWithFrame方法。對象
若是在子類中重載initWithFrame方法, 必須先調用父類的initWithFrame方法。在對自定義的UIView子類進行初始化操做。it
好比:io
- (id) initWithFrame: (CGRect)frame{sed
self = [super initWithFrame:frame];//先調用父類的initWithFrame方法配置
if(self){
//再自定義該類(UIView子類)的初始化操做。
_scrollView = [[UIScrollView alloc] initWithFrame:self.bounds];
[_scrollView setFrame:CGRectMake(0, 0, 320, 480)];
_scrollView.contentSize = CGSizeMake(320*3, 480);
[self addSubView:_scrollView];
}
return self;
}
- (BOOL)respondsToSelector: selector 用來判斷是否有以某個名字命名的方法(被封裝在一個selector的對象裏傳遞)
關於導航欄,狀態欄,返回按鈕的顏色
1. 配置全局導航條顏色
[[UINavigationBar appearance]setBarTintColor:ZDColor(52, 57, 69)
/:注:上面的ZDColor爲pch文件中聲明的:
// 顏色
#define ZDColor(r, g, b) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:1.0]
2. 設置全局導航欄中返回箭頭和及右邊按鈕的顏色
[[UINavigationBar appearance]setTintColor:[UIColor whiteColor]];
3. 設置全局導航欄的title字體顏色
NSShadow *shadow = [[NSShadow alloc] init];
shadow.shadowColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.8];
shadow.shadowOffset = CGSizeMake(0, 1);
[[UINavigationBar appearance] setTitleTextAttributes:[NSDictionary dictionaryWithObjectsAndKeys:[UIColor colorWithRed:246 green:245 blue:245 alpha:1], NSForegroundColorAttributeName, shadow, NSShadowAttributeName, [UIFont fontWithName:@"HelveticaNeue-CondensedBlack" size:18], NSFontAttributeName, nil]];
注:在聲明瞭上面一步以後,這一步不須要了。
4. 註釋掉返回箭頭中的字體
在每一個controller中加入方法:
- (void)hideWords{
[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(0, -60)
forBarMetrics:UIBarMetricsDefault];
}
5. 將全局狀態欄設置爲白色
1>. plist裏面, 新建View controller-based status bar appearance, 設爲NO。而後在appdelegate裏面設置:
// 2.UIApplication設置狀態欄的樣式
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
(這裏須要注意一個問題,若是設置了沒有效果,在某一個子controller中設置,以下:
//顯示狀態欄
[UIApplication sharedApplication].statusBarHidden=NO;
)