對簡單儲存格的增刪改,簡單儲存格增刪改

來源:互聯網
上載者:User

對簡單儲存格的增刪改,簡單儲存格增刪改

 

 

 

 

 

 

 

 

 

 

 

 

 

 

#import <UIKit/UIKit.h>#import "RootTableViewController.h"@interface AppDelegate : UIResponder <UIApplicationDelegate>@property (strong, nonatomic) UIWindow *window;@end

 

 

#import "AppDelegate.h"@interface AppDelegate ()@end@implementation AppDelegate- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    self.window.rootViewController=[[UINavigationController alloc]initWithRootViewController:[[RootTableViewController alloc]initWithStyle:UITableViewStylePlain]];    return YES;}

 

 

#import <UIKit/UIKit.h>@interface RootTableViewController : UITableViewController@property(strong,nonatomic)  NSMutableArray * array;@end

 

 

#import "RootTableViewController.h"#import "ViewController.h"@interface RootTableViewController ()<postValuedelegate>{    //記錄選中行的索引值    NSIndexPath * currentInfrxPath;}@end@implementation RootTableViewController- (void)viewDidLoad {    [super viewDidLoad];    //添加liftbarabutton        self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(addItem)];        self.navigationItem.rightBarButtonItem = self.editButtonItem;        self.array=[NSMutableArray array];        [self.array addObject:@"zhangsan"];        [self.array addObject:@"lisi"];        [self.array addObject:@"wangwu"];        [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"reuseIdentifier"];            // Uncomment the following line to preserve selection between presentations.    // self.clearsSelectionOnViewWillAppear = NO;        // Uncomment the following line to display an Edit button in the navigation bar for this view controller.    }-(void)addItem{    UIAlertController *alertcontroller=[UIAlertController alertControllerWithTitle:@"確定要增加嗎" message:@"輸入姓名?" preferredStyle:(UIAlertControllerStyleAlert)];    UIAlertAction * ok=[UIAlertAction actionWithTitle:@"增加" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {        UITextField * textName= alertcontroller.textFields[0];                        [self.array addObject:textName.text];                [self.tableView reloadData];        //        NSLog(@"真正的操作");    }];        [alertcontroller addTextFieldWithConfigurationHandler:^(UITextField * _Nonnull textField) {               textField.placeholder=@"添加姓名";    }];        [alertcontroller addAction:ok];        [self presentViewController:alertcontroller animated:YES completion:nil];    }-(void)postvalue:(NSString *)username{    //為集合指定索引位置元素賦值    self.array[currentInfrxPath.row]=username;    NSLog(@"%@",username);    //重新整理資料    [self.tableView reloadData];}- (void)didReceiveMemoryWarning {    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}#pragma mark - Table view data source- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {    return 1;}- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {    return self.array.count;}- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"reuseIdentifier" forIndexPath:indexPath];        cell.textLabel.text=self.array[indexPath.row];        return cell;}-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{        currentInfrxPath=indexPath;    ViewController *vc=[[ViewController alloc]init];        vc.name=self.array[indexPath.row];    vc.delegate=self;    [self.navigationController pushViewController:vc animated:YES];}// Override to support conditional editing of the table view.- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {    // Return NO if you do not want the specified item to be editable.    return YES;}// Override to support editing the table view.- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {    if (editingStyle == UITableViewCellEditingStyleDelete) {        // Delete the row from the data source                [self.array removeObjectAtIndex:currentInfrxPath.row];        [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];    } else if (editingStyle == UITableViewCellEditingStyleInsert) {        // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view    }   }// Override to support rearranging the table view.- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {    //1.找到指定位置集合元素    NSString * name= self.array[fromIndexPath.row];    //2.刪除集合元素    [self.array removeObject:name];    //3插入集合    [self.array  insertObject:name atIndex:toIndexPath.row];        NSLog(@"%@",self.array);    }// Override to support conditional rearranging of the table view.- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {    // Return NO if you do not want the item to be re-orderable.    return YES;}/*#pragma mark - Navigation// In a storyboard-based application, you will often want to do a little preparation before navigation- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {    // Get the new view controller using [segue destinationViewController].    // Pass the selected object to the new view controller.}*/@end

 

 

#import <UIKit/UIKit.h>@protocol postValuedelegate <NSObject>-(void)postvalue:(NSString *) username;@end@interface ViewController : UIViewController<UITextFieldDelegate>@property(strong,nonatomic) NSString *name;@property(strong,nonatomic) UITextField * textNmae;@property(strong,nonatomic) id<postValuedelegate> delegate;@end

 

 

#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];        self.view.backgroundColor=[UIColor greenColor];    self.textNmae=[[UITextField alloc]initWithFrame:CGRectMake(100, 100, 150, 44)];        self.textNmae.delegate=self;        self.textNmae.borderStyle=1;        self.textNmae.text=self.name;        [self.view addSubview:self.textNmae];}-(BOOL)textFieldShouldReturn:(UITextField *)textField{        if (self.delegate) {        [self.delegate postvalue:textField.text];    }    if ([textField isFirstResponder]) {        [textField resignFirstResponder];    }        [self.navigationController popViewControllerAnimated:YES];        return YES;}- (void)didReceiveMemoryWarning {    [super didReceiveMemoryWarning];    // Dispose of any resources that can be recreated.}@end

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.