开发者

id transmission issue

开发者 https://www.devze.com 2023-04-13 06:29 出处:网络
This seems to be a very simple thing, but I don\'t know how to do it. At moment I have rootView with the continents populated:

This seems to be a very simple thing, but I don't know how to do it.

At moment I have rootView with the continents populated:

id transmission issue

The code:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}

// Configure the cell.

    cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator;
    //Continent is the class. continents is an array to store data
    Continent *cont=[self.continents objectAtIndex:[indexPath row]]; 
    cell.textLabel.text=cont.continentName;
    return cell;
    }

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
Continent *cont=[self.continents objectAtIndex:[indexPath row]];
SelectedContinent* selectedContinent=[[SelectedContinent alloc] initWithNibName: @"SelectedContinent" bundle: nil];

//NSLog(@"%@",cont.continentName);
[self.navigationController pushViewController: selectedContinent animated: YES];
[selectedContinent setTitle:cont.continentName];
[selectedContinent setContinentID:cont.continentID];
[selectedContinent release];
}

I created a new viewcontroller with nib file. Gave him tableView. And now I need to populate the countries from SQLite file. I made a DBAccess class which supposed to do all db manipulations and for every continent was written special method. Then it came to my mind that writing many methods is the stupid idea and the universal method came to world:

-(NSMutableArray*)getTheCountriesEurope:(int)continentID
{
NSMutableArray* euCountriesArray=[[[NSMutableArray alloc]init]autorelease];
NSString* sqlContinents = [NSString stringWithFormat:
                   @"SELECT countries.countryID,countries.countryName\
                   FROM countries\
                   WHERE countries.relativeToContinentID=%i"
                   ,continentID];
/*const char* sqlContinents="SELECT countries.countryID,countries.countryName\
FROM countries\
WHERE countries.relativeToContinentID=?";*/
sqlite3_stmt *statement;
int sqlResult = sqlite3_prepare_v2(database, sqlContinents, -1, &statement, NULL);
if ( sqlResult== SQLITE_OK)
{
    while (sqlite3_step(statement) == SQLITE_ROW)
    {
        Country *countryObj = [[Country alloc] init];
        char *countryName = (char *)sqlite3_column_text(statement, 1);
        countryObj.countryID = sqlite3_column_int(statement, 0);
        countryObj.countryName = (countryName) ? [NSString stringWithUTF8String:countryName] : @"";
        [euCountriesArray addObject:countryOb开发者_Go百科j];
        NSLog(@"%@",countryObj.countryName);
        [countryObj release];
    }
    sqlite3_finalize(statement);
}
else
{
    NSLog(@"Problem with the database:"); 
    NSLog(@"%d",sqlResult);
}
return euCountriesArray;

 }

anyway, this method also has issues and I was told to implement int sqlite3_bind_int(sqlite3_stmt*, int, int); method as well.

Well, at moment my problem is that I can't to catch the continentID value from RootViewController class I need it to feed to method this value as the parameter.

Have I done right when assigned countryID this way?

 [selectedContinent setTitle:cont.continentName];
 [selectedContinent setContinentID:cont.continentID];

in the RootViewController. If yes, then how to obtain that's variable's value?

At moment when I push another view I see only Title (At least it shows right)

SOS

id transmission issue


You need to assign the values before you push the view.

[selectedContinent setTitle:cont.continentName]; [selectedContinent setContinentID:cont.continentID]; [self.navigationController pushViewController: selectedContinent animated: YES];

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号