• 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会出现警告。

  • 相关阅读:
    使用SDL2显示一张图片,SDL2上手贴
    两种方法操作其它mac应用的窗口
    golang子进程的启动和停止,mac与linux的区别
    自己动手,装一个液晶电视
    在Ubuntu上搭建kindle gtk开发环境
    macOS的OpenCL高性能计算
    量子计算及量子计算的模拟
    iPhone多次输入错误密码锁机后刷机恢复(原有内容会丢失)
    Day 2 总结
    Day 13 linux 的输入输出与管道的使用
  • 原文地址:https://www.cnblogs.com/piaojin/p/5083504.html
Copyright © 2020-2023  润新知