// ViewController.m
#import "ViewController.h"
#define NUM 40
@interface ViewController ()
@property NSArray *_array;
@property UIBarButtonItem *delectItem;
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
__array = @[@"赵大宝",@"钱学森",@"孙猴子",@"李小四",@"周大炮",@"吴小天",@"郑小儿",@"王宝强"];
UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 20, 320, NUM)];
toolBar.barStyle = UIBarStyleDefault;
[toolBar setBackgroundColor:[UIColor blackColor]];
[self.view addSubview:toolBar];
UIBarButtonItem *addItem =[ [UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addBtnClick:)];
_delectItem =[ [UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemTrash target:self action:@selector(delectBtnClick:)];
UIBarButtonItem *flaxibleItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
UIBarButtonItem *linkPerson = [[UIBarButtonItem alloc] initWithTitle:@"联系人" style:UIBarButtonItemStyleDone target:self action:nil];
[linkPerson setEnabled:NO];
NSArray *items = @[addItem,flaxibleItem,linkPerson,flaxibleItem,_delectItem];
_delectItem.enabled = NO;
[toolBar setItems:items animated:YES];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
#pragma mark 增加
- (IBAction)addBtnClick:(UIButton *)sender
{
UIView *rowView = [[UIView alloc] init];
UIView *lastView = [self.view.subviews lastObject];
rowView.frame = CGRectMake(320, lastView.frame.origin.y +NUM+2,320,NUM);
UIButton *btn = [[UIButton alloc] init];
btn.frame = CGRectMake(0, 0, NUM, NUM);
[btn setImage:[UIImage imageNamed:[NSString stringWithFormat:@"face%i.png",arc4random()%9+1]] forState:UIControlStateNormal];
[btn setTag:arc4random()%8];
[rowView addSubview:btn];
[btn addTarget:self action:@selector(clickIconBtn:) forControlEvents:UIControlEventTouchUpInside];
UIButton *removeBtn = [[UIButton alloc] init];
removeBtn.frame = CGRectMake(275, 0, NUM, NUM);
[removeBtn setBackgroundImage:[UIImage imageNamed:[NSString stringWithFormat:@"delete.jpg"]] forState:UIControlStateNormal];
[rowView addSubview:removeBtn];
[removeBtn addTarget:self action:@selector(delete:) forControlEvents:UIControlEventTouchUpInside];
UILabel *label = [[UILabel alloc] init];
label.textAlignment = NSTextAlignmentCenter;
label.frame = CGRectMake(0, 0, 320, NUM);
[rowView addSubview:label];
[UIView animateWithDuration:0.5 animations:^{
if (self.view.subviews.count == 1) {
rowView.frame = CGRectMake(0,62,320,NUM);
}else{
rowView.frame = CGRectMake(0, lastView.frame.origin.y +NUM+2,320,NUM);
}
[rowView setBackgroundColor:[UIColor groupTableViewBackgroundColor]];
[self.view addSubview:rowView];
} completion:^(BOOL finished) {
_delectItem.enabled = YES;
}];
}
#pragma mark 删除
- (IBAction)delectBtnClick:(UIButton *)sender
{
UIView *lastView = [self.view.subviews lastObject];
if (self.view.subviews.count>1) {
[UIView animateWithDuration:0.5 animations:^{
CGRect frame = lastView.frame;
frame.origin.x +=320 ;
lastView.frame = frame ;
} completion:^(BOOL finished) {
[lastView removeFromSuperview];
_delectItem.enabled = self.view.subviews.count>1 ;
}];
}
}
#pragma mark 点击每行的删除按钮
- (IBAction)delete:(UIButton *)sender
{
[UIView animateWithDuration:0.2 animations:^{
CGRect frameD = sender.superview.frame;
frameD.origin.x = 320;
sender.superview.frame = frameD ;
sender.superview.opaque = 0;
} completion:^(BOOL finished) {
NSArray *ary = self.view.subviews;
int index = [ary indexOfObject:sender.superview];
[UIView animateWithDuration:0.2 animations:^{
for (int i = index; i <ary.count ; i++)
{
UIView *view1 = (UIView *)ary[i];
CGRect frame1 = view1.frame;
frame1.origin.y -= (NUM+2);
view1.frame = frame1;
}
} completion:^(BOOL finished) {
[sender.superview removeFromSuperview];
_delectItem.enabled = self.view.subviews.count>1 ;
}];
}];
}
#pragma mark 点击头像显示View上的字符串
- (IBAction)clickIconBtn:(UIButton *)sender
{
UILabel *lab =(UILabel *)sender.superview.subviews[2];
lab.text = (NSString *)__array[sender.tag];
}
@end
简单通讯率添加删除'以及默认删除按钮不能点击
最新推荐文章于 2023-12-19 23:23:55 发布