0

私は Xcode と Objective-C にまったく慣れておらず、プログラミング全般にかなり慣れていないので、重大な誤解がある場合は訂正してください。

これが私が達成したいことです:

  • テーブル ビューを作成する (起動時に空)

  • ユーザーにバーボタンを介してセルを追加して名前を付けさせます(テキストフィールドという名前の別のビューにプッシュし、「作成」ボタンを想定しています)

  • 作成された各セルは、同様の追加/命名機能を備えた新しいテーブル ビューにプッシュされます

  • 次に、これらのセルのそれぞれが Text View にプッシュされます

最初の部分を達成する最善の方法は、文字列配列にデータを入力し、それらの要素を対応するセルに割り当てることだと私には思えます。それが私が立ち往生するところです。

  • テーブル ビューに配列を設定するにはどうすればよいですか?

  • すべてのセルに対して新しいセカンダリ テーブル ビューを作成する必要がありますか?それとも、選択した親セルに応じて同じテーブル ビューに別の方法で入力する必要がありますか?

  • そして、チェーンの最後にあるテキスト ビューについての前の質問と同じ質問です...複数のテキスト ビューまたは毎回異なるテキストが渡されますか?

ここまでお読みいただきありがとうございます。何か明確にする必要がある場合はお知らせください。

4

2 に答える 2

4

テーブルビューを作成する方法を知っていることを願っています。次に、文字列を保存するために NSMutableArray を作成する必要があります。

@property (retain) NSMutableArray *stringsArray = _stringsArray;

したがって、viewDidLoad は次のようになります。

- (void)viewDidLoad
{
    [super viewDidLoad];
    UITableView *myTableView    =   [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStyleGrouped];
    myTableView.dataSource      =   self;
    myTableView.delegate        =   self;
    [self.view addSubview:myTableView];
    [myTableView release];

    self.stringsArray = [NSMutableArray array];
}

現在、テーブルビューは委任されています

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return 1;
}

- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    return [self.stringsArray count];
}

- (UITableViewCell *)tableView:(UITableView *)tmpTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier         =   @"MainCell";
    UITableViewCell *cell               =   [tmpTableView dequeueReusableCellWithIdentifier:CellIdentifier];   
    if (nil == cell) {
        cell    =   [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
    }

    cell.textLabel.text = [self.stringsArray objectAtIndex:indexPath.row];

    return cell;
}

バーボタンをクリックして新しいユーザーを追加するときは、文字列配列に追加して呼び出す必要があります[tableview reloadData];

テキストビューが必要な理由がわかりませんでした。

お役に立てれば!

于 2012-04-12T05:07:01.517 に答える