Objective-C實現(xiàn)自定義的半透明導航
更新時間:2016年05月16日 16:25:49 作者:隨心_而動
這篇文章主要為大家詳細介紹了Objective-C實現(xiàn)自定義的半透明導航的相關(guān)資料,需要的朋友可以參考下
本文實例為大家分享了Objective-C半透明導航的具體實現(xiàn)代碼,供大家參考,具體內(nèi)容如下
#define kScreenWidth [[UIScreen mainScreen] bounds].size.width
#define kScreenHeight [[UIScreen mainScreen] bounds].size.height
#import "RSwenNav.h"
@implementation RSwenNav
{
UIVisualEffectView *effectview;
}
-(instancetype)initWithFrame:(CGRect)frame{
self=[super initWithFrame:frame];
if (self) {
UIBlurEffect *blur = [UIBlurEffect effectWithStyle:UIBlurEffectStyleLight];
effectview = [[UIVisualEffectView alloc] initWithEffect:blur];
effectview.frame=frame;
[self addSubview:effectview];
[self addSubviews];
}
return self;
}
//添加導航子視圖
-(void)addSubviews{
[self addSubview:self.backBtn];
[self addSubview:self.titleLabel];
[self addSubview:self.rightBtn];
}
-(UIButton *)backBtn{
UIButton * btn=[UIButton buttonWithType:UIButtonTypeCustom];
btn.frame=CGRectMake(20, 20, 60, 44);
[btn setTitle:@"返回" forState:UIControlStateNormal];
[btn addTarget:self action:@selector(RSwenNavback) forControlEvents:UIControlEventTouchUpInside];
return btn;
}
-(UILabel *)titleLabel{
UILabel * lable=[[UILabel alloc]init];
lable.font=[UIFont systemFontOfSize:17];
lable.textAlignment=NSTextAlignmentCenter;
lable.frame=CGRectMake(100, 20, kScreenWidth-200, 44);
lable.text=@"我的主頁";
return lable;
}
-(UIButton *)rightBtn{
UIButton * btn=[UIButton buttonWithType:UIButtonTypeCustom];
btn.frame=CGRectMake([UIScreen mainScreen].bounds.size.width-100, 20, 80, 44);
[btn setTitle:@"保存" forState:UIControlStateNormal];
[btn addTarget:self action:@selector(rightBtnClicked) forControlEvents:UIControlEventTouchUpInside];
return btn;
}
#pragma 事件處理部分
//返回上個界面
-(void)RSwenNavback{
//獲取UIView的上層UIViewController
id object = [self nextResponder];
while (![object isKindOfClass:[UIViewController class]] &&
object != nil) {
object = [object nextResponder];
}
UIViewController *uc=(UIViewController*)object;
[uc.navigationController popViewControllerAnimated:YES];
}
//右側(cè)按鈕被點擊
-(void)rightBtnClicked{
if ([_delegate respondsToSelector:@selector(RSwenNavrightBtnClicked)]) {
[_delegate RSwenNavrightBtnClicked];
}
}
@end
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助。
您可能感興趣的文章:
- 如何使用jQuery技術(shù)開發(fā)ios風格的頁面導航菜單
- iOS開發(fā)中導航控制器的基本使用教程
- 詳解iOS開發(fā)中使用storyboard創(chuàng)建導航控制器的方法
- IOS仿今日頭條滑動導航欄
- iOS應(yīng)用開發(fā)中導航欄按鈕UIBarButtonItem的添加教程
- 深入學習iOS7自定義導航轉(zhuǎn)場動畫
- iOS App開發(fā)中導航欄的創(chuàng)建及基本屬性設(shè)置教程
- iOS實現(xiàn)頂部標簽式導航欄及下拉分類菜單
- IOS百度地圖導航開發(fā)功能實現(xiàn)簡述
- 詳解iOS應(yīng)用中自定義UIBarButtonItem導航按鈕的創(chuàng)建方法
相關(guān)文章
ios學習筆記之基礎(chǔ)數(shù)據(jù)類型的轉(zhuǎn)換
在編碼過程中,數(shù)據(jù)的處理是必要的。眾多數(shù)據(jù)中,NSString、NSData、NSArray、 NSDictionary等數(shù)據(jù)類型是常用的,對付它們?nèi)菀祝窃诙鄠€數(shù)據(jù)類型之間轉(zhuǎn)換就需要技巧了。本文主要給大家介紹ios中基礎(chǔ)數(shù)據(jù)類型的轉(zhuǎn)換,有需要的下面來一起看看吧。2016-11-11
本文總結(jié)了2016年比較嚴重的iOS漏洞(可用于遠程代碼執(zhí)行或越獄),希望能夠?qū)Υ蠹乙苿影踩矫娴墓ぷ骱脱芯繋硪恍椭?/div> 2016-12-12
iOS UIButton擴大按鈕響應(yīng)區(qū)域的解決方法
這篇文章主要為大家詳細介紹了iOS UIButton擴大按鈕響應(yīng)區(qū)域的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08
詳解iOS應(yīng)用開發(fā)中使用設(shè)計模式中的抽象工廠模式
這篇文章主要介紹了iOS應(yīng)用開發(fā)中使用設(shè)計模式中的抽象工廠模式,示例代碼為傳統(tǒng)的Objective-C,需要的朋友可以參考下2016-03-03
替代pod update速度慢的lg_pod_plugin安裝使用詳解
這篇文章主要介紹了替代pod update速度慢lg_pod_plugin安裝使用方式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2022-09-09
Xcode8下iOS10常見報錯閃退,字體適配和編譯不過的問題及解決方案
蘋果推送了iOS10,好多朋友迅速即將系統(tǒng)升級了ios10,然后遇到好多問題。下面小編給針對遇到的問題給大家介紹解決方法,希望對大家有所幫助,感興趣的朋友可以參考下2016-09-09最新評論

