0

選択したデータベースとその属性グループから新しいビューを作成する方法に問題があります。私のアプリでは、すべてのリソース(データ)がmainviewController.xibに表示されます。2番目のviewControllerには、ベースにデータを追加するためのテキストフィールドがあります。このテキストフィールドの1つはグループです。ベースに新しいグループを作成するときに、新しいビューを追加したいと思います。私のグループ名が実際のベースと同じである場合、私は何もしません。ここでは、私が使用するコードをいくつか示します。私のコードでは、グループとしてのgrupaです。このコードは2番目のビューからのものです。

- (IBAction) saveData
{
    NSLog(@"saveData");
    [self dismissKeyboard];
    Destination *dest = (Destination *)[NSEntityDescription insertNewObjectForEntityForName:@"Destination" 
                                                                     inManagedObjectContext:managedObjectContext];
    dest.nazwa = nazwaTextField.text;
    dest.zasob = zasobTextField.text;
    dest.grupa = grupaTextField.text;
    dest.typzasobu = typzasobuTextField.text;
    dest.tag = [NSNumber numberWithInt:[_arrayLogics indexOfObject:typzasobuTextField.text]];

    NSError *error;

    // here's where the actual save happens, and if it doesn't we print something out to the console
    if (![managedObjectContext save:&error])
    {
        NSLog(@"Problem saving: %@", [error localizedDescription]);
    }

    // **** log objects currently in database ****
    // create fetch object, this object fetch's the objects out of the database
    NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init];
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Destination" inManagedObjectContext:managedObjectContext];
    [fetchRequest setEntity:entity];
    NSArray *fetchedObjects = [managedObjectContext executeFetchRequest:fetchRequest error:&error];

    for (NSManagedObject *info in fetchedObjects)
    {
        NSLog(@"Nazwa Zasobu: %@", [info valueForKey:@"nazwa"]);
        NSLog(@"Zasób: %@", [info valueForKey:@"zasob"]);
        NSLog(@"Grupa: %@", [info valueForKey:@"grupa"]);
        NSLog(@"Typ zasobu: %@", [info valueForKey:@"typzasobu"]);
    }


    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Potwierdzenie" message:@"Zasób zapisany" delegate:self cancelButtonTitle:@"OK" otherButtonTitles: nil];
    [alert show];   

}

ありがとう

4

1 に答える 1

0

私は理解していると思います...

  • プライマリビューにリソース(Zasób)のリストがあります。
  • これらのリソースは、「Grupa」フィールドによってグループ化されています。
  • リソースを追加/編集できる別のviewControllerがあります。

私が間違っている場合は訂正してください。ただし、メインビューを次のように表示する必要があると思います。 ここに画像の説明を入力してください

これが正しければ、UITableViewControllerと UITableViewをUITableViewStyleGroupedのテーブルスタイルで調べることをお勧めします。このようにして、Appleが推奨する方法でリソースのリストを追加/編集できます。

フローは次のようになります。 ここに画像の説明を入力してください

NSSortDescriptor(データストアからのフェッチを注文するため)、およびテーブルのデータソースデリゲートメソッドをプラグインする方法について学ぶ必要がありますが、それだけの価値があります

知識を習得するのに役立つリソースを次に示します。

于 2012-07-24T08:38:40.713 に答える