2014-02-12 71 views
0

在蘋果的郵件應用程序,你可以刷卡要麼修改或垃圾郵件,就像這樣:的UITableView - 多編輯風格

enter image description here

是否有可能與出的現成功能來做到這一點UIKit的?我似乎只能得到一種類型的控制(刪除)出現。蘋果是否爲郵件應用程序創建了自定義樣式?

感謝

回答

1

我不知道你的盒子代碼,但這裏是一個鏈接到github中的項目,它完全符合你的要求。

https://github.com/TeehanLax/UITableViewCell-Swipe-for-Options

你必須修改你的,雖然大意如下的東西。

enter c UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.bounds), CGRectGetHeight(self.bounds))]; 
FscrollView.contentSize = CGSizeMake(CGRectGetWidth(self.bounds) + kCatchWidth, CGRectGetHeight(self.bounds)); 
scrollView.delegate = self; 
scrollView.showsHorizontalScrollIndicator = NO; 

[self.contentView addSubview:scrollView]; 
self.scrollView = scrollView; 

UIView *scrollViewButtonView = [[UIView alloc] initWithFrame:CGRectMake(CGRectGetWidth(self.bounds) - kCatchWidth, 0, kCatchWidth, CGRectGetHeight(self.bounds))]; 
self.scrollViewButtonView = scrollViewButtonView; 
[self.scrollView addSubview:scrollViewButtonView]; 

// Set up our two buttons 
UIButton *moreButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
moreButton.backgroundColor = [UIColor colorWithRed:0.78f green:0.78f blue:0.8f alpha:1.0f]; 
moreButton.frame = CGRectMake(0, 0, kCatchWidth/3.0f, CGRectGetHeight(self.bounds)); 
[moreButton setTitle:@"More" forState:UIControlStateNormal]; 
[moreButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; 
[moreButton addTarget:self action:@selector(userPressedMoreButton:) forControlEvents:UIControlEventTouchUpInside]; 

[self.scrollViewButtonView addSubview:moreButton]; 

UIButton *shareButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
shareButton.backgroundColor = [UIColor colorWithRed:0.0f green:0.0f blue:1.0f alpha:1.0f]; 
shareButton.frame = CGRectMake(kCatchWidth/3.0f, 0, kCatchWidth/3.0f, CGRectGetHeight(self.bounds)); 
[shareButton setTitle:@"Share" forState:UIControlStateNormal]; 
[shareButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; 
[shareButton addTarget:self action:@selector(userPressedMoreButton:) forControlEvents:UIControlEventTouchUpInside]; 
[self.scrollViewButtonView addSubview:shareButton]; 

UIButton *deleteButton = [UIButton buttonWithType:UIButtonTypeCustom]; 
deleteButton.backgroundColor = [UIColor colorWithRed:1.0f green:0.231f blue:0.188f alpha:1.0f]; 
deleteButton.frame = CGRectMake(kCatchWidth/3.0f+kCatchWidth/3.0f, 0, kCatchWidth/3.0f, CGRectGetHeight(self.bounds)); 
[deleteButton setTitle:@"Delete" forState:UIControlStateNormal]; 
[deleteButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; 
[deleteButton addTarget:self action:@selector(userPressedDeleteButton:) forControlEvents:UIControlEventTouchUpInside]; 
[self.scrollViewButtonView addSubview:deleteButton]; 

UIView *scrollViewContentView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, CGRectGetWidth(self.bounds), CGRectGetHeight(self.bounds))]; 
scrollViewContentView.backgroundColor = [UIColor whiteColor]; 
[self.scrollView addSubview:scrollViewContentView]; 
self.scrollViewContentView = scrollViewContentView; 

UILabel *scrollViewLabel = [[UILabel alloc] initWithFrame:CGRectInset(self.scrollViewContentView.bounds, 10, 0)]; 
self.scrollViewLabel = scrollViewLabel; 
[self.scrollViewContentView addSubview:scrollViewLabel]; 

我希望這可以幫助你。