ios仿收货地址管理

Posted 回忆12

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ios仿收货地址管理相关的知识,希望对你有一定的参考价值。

最近公司项目增加了一个需求,然后要有收货地址的管理,有单选框的设置,我昨晚也是写了很晚才写出来的,然偶今天就分享一下吧,同时也是我自己积累的过程,当然了,我今天给的是一个demo的例子,我不可能把自己的项目搬进来。下面就不说废话了,直接上代码。

我现在写的是一个简单的demo,至于后面可能会加上难的吧,然后我也会更新的。

#import "ViewController.h"

 

#define rowCount        5

 

@interface ViewController ()<UITableViewDelegate,UITableViewDataSource>

 

@property(nonatomic,strong)NSMutableArray *allButtonArray;

@end

 

@implementation ViewController

 

- (void)viewDidLoad {

    [super viewDidLoad];

    self.allButtonArray = [[NSMutableArray alloc] init];

    

    UITableView *tabView = [[UITableView alloc] initWithFrame:self.view.frame style:UITableViewStylePlain];

    tabView.delegate =self;

    tabView.dataSource =self;

    

    [self.view addSubview:tabView];

    

}

 

 

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView

{

    return 1;

}

 

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section

{

    return rowCount;

    

}

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

{

    static NSString *identifier = @"identifier";

    

    UITableViewCell *cell = (UITableViewCell*)[view  dequeueReusableCellWithIdentifier:identifier];

    

    if (cell==nil) {

        

        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier];

        cell.selectionStyle = UITableViewCellSelectionStyleNone;

        cell.textLabel.text = @"aaa";

        

        UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];

        button.tag = 1000+indexPath.row;

        [button setImage:[UIImage imageNamed:@"unselect"] forState:UIControlStateNormal];

//        [button setTitle:@"title" forState:UIControlStateNormal];

        button.frame = CGRectMake(0, 0, 200, 60);

        [button addTarget:self action:@selector(buttonClick:) forControlEvents:UIControlEventTouchUpInside];

        

        [cell addSubview:button];

        

        [_allButtonArray addObject:button];

    }

    

    return cell;

}

 

- (void)buttonClick:(UIButton *)button

{

    NSLog(@"click-----------");

    [button setImage:[UIImage imageNamed:@"selected"] forState:UIControlStateNormal];

//    [button setTitle:@"afterClick" forState:UIControlStateNormal];

    

//    for ( int i=0; i<rowCount; i++) {

//        NSInteger tag = 1000+i;

//        if (tag!=button.tag) {

//            UIButton *unselectedbutton = (UIButton *)[self.view viewWithTag:tag];

//            [unselectedbutton setImage:[UIImage imageNamed:@"unselect"] forState:UIControlStateNormal];

//        }

//    }

    

    for (int i=0; i<[_allButtonArray count]; i++) {

        UIButton *cellButton = (UIButton *)_allButtonArray[i];

        if (cellButton!=button) {

            [cellButton setImage:[UIImage imageNamed:@"unselect"] forState:UIControlStateNormal];

        }

    }

   

}

 

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath

{

    NSLog(@"...........");

 

}

 

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}

 

 

@end

 

以上是关于ios仿收货地址管理的主要内容,如果未能解决你的问题,请参考以下文章

Android 仿淘宝2018添加地址

Android 仿淘宝2018添加地址

wex5实战之管理收货地址

ios收货地址三级联动选择

wex5实战之管理收货地址

电商小程序实战教程-地址管理