iOS中UITableView的一些设置


不可滑动:

tableView.userInteractionEnabled = NO;

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


显示导向箭头:

// 显示导向箭头
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;


自定义按钮:

- (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.给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设置图片:

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


cell滑动删除功能:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    NSLog(@"userId是:%@",_userId);
    NSLog(@"长按的行号是:%d",[indexPath row]);
}

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

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

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



你可能感兴趣的:(iOS中UITableView的一些设置)