iOS中UITableView的一些设置

不可滑动:

?


1

tableView.userInteractionEnabled = NO;

也可以在storyboard中的userInteractionEnable属性设置

显示导向箭头:

?


1

2

// 显示导向箭头

cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;

自定义按钮:

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    static NSString *ID = @"device";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];

    

    HHDevice *device = self.device[indexPath.row];

    // 给cell的控件赋值

    cell.textLabel.text = device.nickName;

    cell.detailTextLabel.text = device.IMSI;

    

    // 自定义一个button

    UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];

    btn.frame = CGRectMake(0, 0, 55, 25);

    btn.backgroundColor = [UIColor clearColor];

    btn.tag = indexPath.row;// 给按钮绑定tag,好知道点击的是哪行

    [btn setTitle:@"Edit" forState:UIControlStateNormal];

    

    [btn addTarget:self action:@selector(Edit:) forControlEvents:UIControlEventTouchUpInside];

    

    cell.accessoryView = btn;

    

    return cell;

}

设置背景图片:

?


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

1.给tableView设置背景view  

  UIImageView *backImageView=[[UIImageViewalloc]initWithFrame:self.view.bounds];  

   [backImageView setImage:[UIImageimageNamed:@"liaotianbeijing"]];  

    self.tableView.backgroundView=backImageView;  

   

2.让cell透明  

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  

{  

       

    

   MyCell  *cell = [tableViewdequeueReusableCellWithIdentifier:@"METext"forIndexPath:indexPath];  

    cell.backgroundColor=[UIColor clearColor];//关键语句  

    [cell setCellInfo:dic];//自定义类目方法  

     return cell;  

       

}

给tableView设置背景图片,但如果直接设置背景  backgroundView的话,背景图不会显示,原因是  tableView上的cell默认是不透明的颜色,所以解决方法是 让  cell透明即可。

给cell设置图片:

?


1

cell.imageView.image = [UIImage imageNamed:@"childish_folder"];

cell滑动删除功能:

?


1

2

3

4

5

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath

{

    NSLog(@"userId是:%@",_userId);

    NSLog(@"长按的行号是:%d",[indexPath row]);

}

NSInteger的输格式化输出是%ld:

?


1

NSString *number = [@"NO." stringByAppendingString:[NSString stringWithFormat:@"%ld:", (indexPath.row + 1)]];

如果格式写成%d的话,Xcode会出现警告。

时间: 2024-10-12 23:29:17

iOS中UITableView的一些设置的相关文章

iOS中字体样式的设置、颜色、空心、删除线、阴影、斜体、扁平化

不多说直接上代码! 这些知识基本的文字设置,实际上iOS中文字的设置有很多,比如说颜色.空心.删除线.阴影.斜体.扁平化等, NSStrokeWidthAttributeName这个属性所对应的值是一个 NSNumber 对象(小数).该值改变描边宽度(相对于字体size 的百分比).默认为 0,即不改变.正数只改变描边宽度.负数同时改变文字的描边和填充宽度.例如,对于常见的空心字,这个值通常为3.0. 同时设置了空心的两个属性,并且NSStrokeWidthAttributeName属性设置为

IOS中多视图应用设置首界面

XCODE版本:6.4 IOS版本:8.4 错误: View Switcher[4883:389088] Failed to instantiate the default view controller for UIMainStoryboardFile 'Main' - perhaps the designated entry point is not set? 因为书上使用的较旧的版本,xcode6之前的版本在创建项目时有"empty application"模板,但是6.4没有这

IOS中UITableView异步加载图片的实现

本文转载至 http://blog.csdn.net/enuola/article/details/8639404 最近做一个项目,需要用到UITableView异步加载图片的例子,看到网上有一个EGOImageView的很好的例子. 但是由于,EGOImageView的实现比较复杂,于是自己就动手做了一个AsynImageView,同样可以实现EGOImageView的效果. 而且自己写的代码比较清晰,容易理解,同样可以实现指定placehoderImage以及指定imageURL,来进行图片

iOS 中UITableView的深理解

例如下图:首先分析一下需求:1.根据模型的不同状态显示不同高度的cell,和cell的UI界面. 2.点击cell的取消按钮时,对应的cell首先要把取消按钮隐藏掉,然后改变cell的高度. 根据需求先解决第一个需求,需要两步 当模型数据的属性的status [email protected]"2",不显示取消按钮:status = @"1",显示取消按钮. 1.需要注意的是cell的重用在这里面互有一些影响,所以在自定义cell的模型的setter方法中, 在ce

iOS中UITableView和UICollectionView的默认空态页

项目中想实现空态页风格统一控制的效果,就封装了一个默认空态页,使用的技术点有:1 方法替换 ,2 给分类(Category)添加属性. 我们知道,扩展(extension)可以给类添加私有变量和方法.但是分类(Category)不可以,但是我们又想在原生的UITableView和UICollectionView上添加空态页,所以使用了黑科技runtime中提供的对象关联.objc_setAssociatedObject/objc_getAssociatedObject. 懒得说明了,具体看代码.

iOS中UITableView数据源刷新了,但tableview当中的cell没有刷新

你会不会遇到通过断点查看数据源模型的确刷新了,但是tableview没有刷新的情况,我遇到了,并通过下面的方法解决了,供大家参考! 在tableview中的数据源代理方法 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px Menlo } span.s1 { } span.s2 { font: 11.0px Menlo; color: #703daa } - (UITableViewCell *)tableView:(UITableView

IOS中UITableview的两种Header view

UITableview中可以通过 1 UITableView *_tableView; 2 _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height) style:UITableViewStyleGrouped]; 来生成一个表格,在style中有两个类型可以选择 1 typedef NS_ENUM(NSInteg

IOS中Block的循环引用

@interface DemoObj() @property (nonatomic, strong) NSOperationQueue *queue; @end @implementation DemoObj - (instancetype)init { self = [super init]; if (self) { self.queue = [[NSOperationQueue alloc] init]; } return self; } - (void)dealloc { NSLog(@"

IOS开发中UITableView(表视图)的性能优化及自定义Cell

IOS开发中UITableView(表视图)的滚动优化及自定义Cell IOS 开发中UITableView是非常常用的一个控件,我们平时在手机上看到的联系人列表,微信好友列表等都是通过UITableView实现的.UITableView这个控件中的列表的每一行是一个cell,当UITableView中cell数量特别大的时候,由于每次都需要alloc分配内存并初始化,会导致app运行不流畅,所以可以使用苹果提供的几个方法进行优化,我把这个过程记录下来供自己以后查阅. 当然,既然说到优化,那我们