UITabView 小实例

列表是我们在手机软件上最常见的控件之一,现在我们来了解一下tabview.

(1)首先要创建一个继承于UITableViewController的类,并且需要使用相应的代理:

 <UITableViewDelegateUITableViewDataSource>,这两个代理一个是针对列表,一个是针对列表中需要添加的数据源.

(2).创建列表和存储数据的数组,这里分为固定数组和可变数据,我们在项目中常用可变数组,因为需要分类追加数组:

/**列表*/

@property (nonatomicstrong)UITableView *listView;

/**数组*/

@property (nonatomicstrong)NSMutableArray *datas;

(3)我们需要针对listview 和datas分别写方法:


- (UITableView *)listView

{

    if (_listView == nil) {

        _listView = [[UITableView allocinitWithFrame:CGRectMake(00320568style:UITableViewStylePlain];

        _listView.delegate = self;

        _listView.dataSource = self;

        

    }

    return _listView;

}


这个方法主要是当父类方法不存在的时候,初始化listview,并且设置数据源和列表的代理对象,最后给页面返回一个listView.

- (NSArray *)datas

{

    if (_datas == nil) {

        _datas = [NSMutableArray array];

        _datas = @[@"一号"@"二号"@"三号"@"1"@"1"@"1",@"2"@"2"@"2",@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"@"3"];

    }

    return _datas;

}

这路可变数组的方法就是初始化,并且给data赋值.

(4)我们常见的列表都是比较复杂的,所以这里涉及到针对列表单行布局问题,下面我们来看看针对列表单行的布局,涉及到的方法是:

-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{}

 

- (void)SetAction{}

   第一个方法是针对布局的,第二个方法是给列表中的各个控件添加方法的.


下面来看看写完整个过程的实现效果:

UITabView 小实例_第1张图片

下面是点中test 按钮后添加的方法是一个弹出框:


具体的弹出框方法:


- (void)SetAction

{

    [self.btn addTarget:self.VC action:self.buttonAction forControlEvents:UIControlEventTouchUpInside];

}


cell.buttonAction = @selector(cellAction);

    [cell SetAction];



- (void)cellAction

{

    UIAlertView *alert = [[UIAlertView allocinitWithTitle:@"标题" message:@"点中我了" delegate:self cancelButtonTitle:@"确定" otherButtonTitles:nil];

    [alert show];

    

}

总结:

    关于TabView了解的还不是很多,现在只能做简单的布局,对于我们常看到的朋友圈发的一些消息,以及评论都是列表做的,相对来说复杂很多,考虑的东西也比较多,现在正尝试着做这一块儿!


你可能感兴趣的:(UITabView 小实例)