iOS开发UI篇UITableview控件基本使用Word格式.docx

上传人:b****6 文档编号:20424080 上传时间:2023-01-22 格式:DOCX 页数:14 大小:248.54KB
下载 相关 举报
iOS开发UI篇UITableview控件基本使用Word格式.docx_第1页
第1页 / 共14页
iOS开发UI篇UITableview控件基本使用Word格式.docx_第2页
第2页 / 共14页
iOS开发UI篇UITableview控件基本使用Word格式.docx_第3页
第3页 / 共14页
iOS开发UI篇UITableview控件基本使用Word格式.docx_第4页
第4页 / 共14页
iOS开发UI篇UITableview控件基本使用Word格式.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

iOS开发UI篇UITableview控件基本使用Word格式.docx

《iOS开发UI篇UITableview控件基本使用Word格式.docx》由会员分享,可在线阅读,更多相关《iOS开发UI篇UITableview控件基本使用Word格式.docx(14页珍藏版)》请在冰豆网上搜索。

iOS开发UI篇UITableview控件基本使用Word格式.docx

13@implementationNJViewController

14

15#pragmamark-懒加载

16-(NSArray*)heros

17{

18if(_heros==nil){

19//1.获得全路径

20NSString*fullPath=[[NSBundlemainBundle]pathForResource:

@"

heros"

ofType:

plist"

];

21//2.更具全路径加载数据

22NSArray*dictArray=[NSArrayarrayWithContentsOfFile:

fullPath];

23//3.字典转模型

24NSMutableArray*models=[NSMutableArrayarrayWithCapacity:

dictArray.count];

25for(NSDictionary*dictindictArray){

26NJHero*hero=[NJHeroheroWithDict:

dict];

27[modelsaddObject:

hero];

28}

29//4.赋值数据

30_heros=[modelscopy];

31}

32//4.返回数据

33return_heros;

34}

35

36-(void)viewDidLoad

37{

38[superviewDidLoad];

39//设置Cell的高度

40//当每一行的cell高度一致的时候使用属性设置cell的高度

41self.tableView.rowHeight=60;

42self.tableView.delegate=self;

43}

44

45#pragmamark-UITableViewDataSource

46//返回多少组

47-(NSInteger)numberOfSectionsInTableView:

(UITableView*)tableView

48{

49return1;

50}

51//返回每一组有多少行

52-(NSInteger)tableView:

(UITableView*)tableViewnumberOfRowsInSection:

(NSInteger)section

53{

54returnself.heros.count;

55}

56//返回哪一组的哪一行显示什么内容

57-(UITableViewCell*)tableView:

(UITableView*)tableViewcellForRowAtIndexPath:

(NSIndexPath*)indexPath

58{

59//1.创建CELL

60UITableViewCell*cell=[[UITableViewCellalloc]initWithStyle:

UITableViewCellStyleSubtitlereuseIdentifier:

nil];

61//2.设置数据

62//2.1取出对应行的模型

63NJHero*hero=self.heros[indexPath.row];

64//2.2赋值对应的数据

65cell.textLabel.text=hero.name;

66cell.detailTextLabel.text=hero.intro;

67cell.imageView.image=[UIImageimageNamed:

hero.icon];

68//3.返回cell

69returncell;

70}

71#pragmamark-UITableViewDelegate

72/*

73//当每一行的cell的高度不一致的时候就使用代理方法设置cell的高度

74-(CGFloat)tableView:

(UITableView*)tableViewheightForRowAtIndexPath:

75{

76if(1==indexPath.row){

77return180;

78}

79return44;

80}

81*/

82

83#pragmamark-控制状态栏是否显示

84/**

85*返回YES代表隐藏状态栏,NO相反

86*/

87-(BOOL)prefersStatusBarHidden

88{

89returnYES;

90}

91@end

实现效果:

代码注意点:

(1)在字典转模型的代码处用下面的代码,为可变数组分配dictArray.count个存储空间,可以提高程序的性能

NSMutableArray 

*models=[NSMutableArrayarrayWithCapacity:

(2)设置cell的高度

有三种办法可以设置cell的高度

1) 

可以在初始加载方法中设置,self.tableView.rowHeight 

60;

这适用于当每一行的cell高度一致的时候,使用属性设置cell的高度。

2)在storyboard中设置,适用于高度一致

3)当每一行的cell的高度不一致的时候就使用代理方法设置cell的高度

  -(CGFloat)tableView:

{

 

 

if(1==indexPath.row){

return180;

}

return44;

}

二、cell的一些属性

代码示例:

10

11@end

12

13@implementationNJViewController

14

15#pragmamark-懒加载

16-(NSArray*)heros

17{

18if(_heros==nil){

19//1.获得全路径

20NSString*fullPath=[[NSBundlemainBundle]pathForResource:

21//2.更具全路径加载数据

22NSArray*dictArray=[NSArrayarrayWithContentsOfFile:

23//3.字典转模型

24NSMutableArray*models=[NSMutableArrayarrayWithCapacity:

25for(NSDictionary*dictindictArray){

26NJHero*hero=[NJHeroheroWithDict:

27[modelsaddObject:

28}

29//4.赋值数据

30_heros=[modelscopy];

31}

32//4.返回数据

33return_heros;

35

36-(void)viewDidLoad

37{

38[superviewDidLoad];

39//设置Cell的高度

40//当每一行的cell高度一致的时候使用属性设置cell的高度

41self.tableView.rowHeight=60;

42self.tableView.delegate=self;

43

44}

45

46#pragmamark-UITableViewDataSource

47//返回多少组

48-(NSInteger)numberOfSectionsInTableView:

49{

50return1;

51}

52//返回每一组有多少行

53-(NSInteger)tableView:

54{

55returnself.heros.count;

56}

57//返回哪一组的哪一行显示什么内容

58-(UITableViewCell*)tableView:

59{

60//1.创建CELL

61UITableViewCell*cell=[[UITableViewCellalloc]initWithStyle:

62//2.设置数据

63//2.1取出对应行的模型

64NJHero*hero=self.heros[indexPath.row];

65//2.2赋值对应的数据

66cell.textLabel.text=hero.name;

67cell.detailTextLabel.text=hero.intro;

68cell.imageView.image=[UIImageimageNamed:

69

70//2.3设置cell的辅助视图

71//cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator;

72if(0==indexPath.row){

73cell.accessoryView=[UIButtonbuttonWithType:

UIButtonTypeContactAdd];

74}else

75{

76cell.accessoryView=[[UISwitchalloc]init];

77}

78//UIButton*btn=[[UIButtonalloc]init];

79//btn.backgroundColor=[UIColorredColor];

80//cell.accessoryView=btn;

81

82

83//2.4设置cell的背景颜色

84cell.backgroundColor=[UIColorblueColor];

85

86//设置默认状态的背景

87//UIView*view=[[UIViewalloc]init];

88//view.backgroundColor=[UIColorblueColor];

89//cell.backgroundView=view;

90

91UIImageView*iv=[[UIImageViewalloc]initWithImage:

[UIImageimageNamed:

buttondelete"

]];

92cell.backgroundView=iv;

93

94//设置选中状态的背景

95UIView*view2=[[UIViewalloc]init];

96view2.backgroundColor=[UIColorpurpleColor];

97cell.selectedBackgroundView=view2;

98//3.返回cell

99returncell;

100}

101

102

103#pragmamark-控制状态栏是否显示

104/**

105*返回YES代表隐藏状态栏,NO相反

106*/

107-(BOOL)prefersStatusBarHidden

108{

109returnYES;

110}

111@end

cell的一些属性:

(1)设置cell的辅助视图,设置cell.accessoryView(系统提供了枚举型,也可以自定义@父类指针指向子类对象);

(2)设置cell的背景颜色,有两种方式可以设置cell的背景颜色:

通过backgroundColor和backgroundView都可以设置cell的背景。

但是backgroundView 

的优先级比 

backgroundColor的高,所以如果同时设置了backgroundColor和backgroundView,那么backgroundView会盖住backgroundColor

示例:

cell.backgroundColor 

=[UIColorblueColor];

(3)设置cell默认状态的背景

示例1:

   

UIView*view=[[UIViewalloc]init];

  view.backgroundColor=[UIColorblueColor];

  cell.backgroundView=view;

示例2:

UIImageView 

*iv=[[UIImageViewalloc] 

initWithImage:

cell.backgroundView 

=iv;

(父类指针指向子类对象,可以使用图片用简单的操作设置绚丽的效果)

(4)设置cell选中状态的背景

示例:

  UIView 

*view2=[[UIView 

alloc] 

init];

view2.backgroundColor 

=[UIColorpurpleColor];

cell.selectedBackgroundView 

=view2;

三、tableview的一些属性

#import"

3@interfaceNJViewController()<

UITableViewDataSource>

4

5@end

6

7@implementationNJViewController

8

9-(void)viewDidLoad

10{

11[superviewDidLoad];

13//1.创建tableview

14UITableView*tableview=[[UITableViewalloc]init];

15tableview.frame=self.view.bounds;

17//2.设置数据源

18tableview.dataSource=self;

19

20//3.添加tableview到view

21[self.viewaddSubview:

tableview];

22

23//4.设置分割线样式

24//tableview.separatorStyle=UITableViewCellSeparatorStyleNone;

25

26//5.设置分割线颜色

27接收的参数是颜色的比例值

28tableview.separatorColor=[UIColorcolorWithRed:

0/255.0green:

255/255.0blue:

0/255.0alpha:

255/255.0];

29

30//设置tableview的头部视图

31tableview.tableHeaderView=[UIButtonbuttonWithType:

32tableview.tableFooterView=[[UISwitchalloc]init];

33}

34

35-(NSInteger)numberOfSectionsInTableView:

36{

37return1;

38}

39-(NSInteger)tableView:

40{

41return10;

42}

43

44-(UITableViewCell*)tableView:

45{

46//1.创建cell

47UITableViewCell*cell=[[UITableViewCellalloc]initWithStyle:

UITableViewCellStyleDefaultreuseIdentifier:

48

49//2.设置cell的数据

50cell.textLabel.text=[NSStringstringWithFormat:

%d"

indexPath.row];

51

52//3.返回cell

53returncell;

54}

55

56-(BOOL)prefersStatusBarHidden

57{

58returnYES;

59}

60@end

tableview的一些属性:

(1)设置分割样式(tableview.separatorStyle),这是个枚举类型

(2)设置分割线的颜色,可以直接使用系统给出的颜色,如果系统给定的颜色不能满足需求时,也可以自定义。

  补充:

颜色分为24位和32位的,如下

24bit颜色

R8bit0~255

G8bit0~255

B8bit0~255

32bit颜色

A8bit0~255(tou)

R8bit

G8bit

B8bit

#ffffff 

白色

#000000 

黑色

#ff0000 

红色

#2550000

设置为自定义颜色的实例:

tableview.separatorColor 

=[UIColorcolorWithRed:

0/255.0green:

255/255.0blue:

0/255.0alpha:

//接收的参数是颜色的比例值

(3)设置顶部和底部视图

tableview.tableHeaderView 

//顶部

tableview.tableFooterView 

//底部

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书 > 辩护词

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1