iosui uitableview里怎么添加导航栏控制和下面标签栏

iosui uitableview里怎么添加导航栏控制和下面标签栏,第1张

IOS开薯拆发UI篇—导航控制器属性和基本使用

一、导航控制器的一些属性和基本使用

1.把子控制器添加到导航控制器中的如手桥四种方法

(1)

1.创建一个导航控制器

UINavigationController *nav=[[UINavigationControlleralloc]init]

2.设置导航控制器为window的根视图

self.window.rootViewController=nav

3.添加

YYOneViewController *one = [[YYOneViewController alloc] init]

[nav pushViewController:one animated:YES]

(2)

1.创建一个导航控制器

UINavigationController *nav=[[UINavigationControlleralloc]init]

2.设置导航控制器为window的根视图

self.window.rootViewController=nav

3.添加

YYOneViewController *one = [[YYOneViewController alloc] init]

[nav addChildViewController:one]

(3)

1.创建一个导航控制器

UINavigationController *nav=[[UINavigationControlleralloc]init]

2.设置导航控制器为window的根视图

self.window.rootViewController=nav

3.添加

YYOneViewController *one = [[YYOneViewController alloc] init]

nav.viewControllers=@[one](添加到导航控制器的栈中)

说明:nav.viewControllers== nav.childViewControllers注意该属性是只读的,因此不能像下面这样写。nav.childViewControllers = @[one]

(4)最常用的方法

YYOneViewController *one=[[YYOneViewController alloc]init]

UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:one]

2.当前子控制器界面导航栏的标题以及对应返回标题的设置渣猛

self.navigationItem.title=@"第一个界面"

self.navigationItem.backBarButtonItem=[[UIBarButtonItemalloc]initWithTitle:@"返回一"style:UIBarButtonItemStylePlain target:nilaction:nil]

3.给导航栏添加按钮

说明:可添加一个,也可以添加多个(数组)

添加导航栏左边的按钮(添加一个相机图标的按钮),会盖掉返回

  self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemCamera target:nil action:nil]

4.界面跳转

跳转到第二个界面(当前为第三个,移除当前栈顶的控制器) [self.navigationControllerpopViewControllerAnimated:YES]

移除处理栈底控制器之外的所有控制器 [self.navigationControllerpopToRootViewControllerAnimated:YES]

只要传入栈中的某一个控制器,就会跳转到指定控制器 [self.navigationController popToViewController:<#(UIViewController *)#>animated:<#(BOOL)#>]

二、代码示例

YYAppDelegate.m文件

1 //

2 // YYAppDelegate.m

3 // 01-导航控制器的使用1

4 //

5 // Created by apple on 14-6-4.

6 // Copyright (c) 2014年 itcase. All rights reserved.

7 //

8

9 #import "YYAppDelegate.h"

10 #import "YYOneViewController.h"

11

12 @implementation YYAppDelegate

13

14 //应用程序启动完毕即会调用

15 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

16 {

17 self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]

18 self.window.backgroundColor = [UIColor whiteColor]

19

20

21 //3.添加子控制器到导航控制器中

22 //第一种也是最常用的一种

23 //YYOneViewController *one=[[YYOneViewController alloc]init]

24 //UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:one]

25

26 //1.创建一个导航控制器

27 UINavigationController *nav=[[UINavigationController alloc]init]

28 //2.设置导航控制器为window的根视图

29 self.window.rootViewController=nav

30

31 //第二种

32 YYOneViewController *one = [[YYOneViewController alloc] init]

33 [nav pushViewController:one animated:YES]

34

35 //第三种

36 //[nav addChildViewController:one]

37 //第四种(添加到导航控制器的栈中)

38 //nav.viewControllers=@[one]

39

40 // 导航控制器的栈

41 //nav.viewControllers== nav.childViewControllers

42 // 注意该属性是只读的,因此不能像下面这样写

43 //nav.childViewControllers = @[one]

44

45

46 [self.window makeKeyAndVisible]

47 return YES

48 }

49

50 @end

几乎在开发每个app中都会使春陵用到 UINavigationController ,然而几乎没人喜欢系统自带的样式,自定义一些 navigation bar 的样式,也变得重要了。本文会从以下几个方面来说明如和自定义 navigation bar 的样式。

系统的 navigation bar 长这样:

我们来看一下 navigation bar 的几个重要模块。

改变 navigation bar 的颜色很容易

translucent 半透明的,看着会有一层毛玻璃效果。

barTintColor 背景色,不是什么 backgroundColor 也亮胡不是 tintColor 。

也可以设置一张图当作背景

titleTextAttributes 你可以设置字体颜色等属性

这里是文档

我们甚至可以自己设置 navigationItem.titleView 来改变标题的样式

UIBarButtonItem 可以创建多种类型的按钮,文字、图片、自定义视图,还可以设置它的字体属性。

tintColor 设置后会影响文字或者图片颜色

默认的返回按钮包含一个返回的图片和文字,文字是控制器的标题,没有默认是Back。

给 backBarButtonItem 复值文字类型的 UIBarButtonItem 可以改变返回的文字,复值图片类型的但是不会返回的箭头,然后你的返回按钮就有两个图标。怎么办呢,我们设置一个 navigationItem.leftBarButtonItem 来当作返回按钮,还需要敬森拦注意的是这时候侧滑返回会失效,需要设置交互手势代理。

自定义样式

隐藏横线

翻译自 https://dmtopolog.com/navigation-bar-customization/


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11979034.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存