XCode spørsmål

XCode spørsmål

Innleggav imacthat » søn 06.01.2013 22:19

Hei jeg driver å lærer meg xcode også lagde jeg dette innlegget så jeg kan få stilt noe spørsmål så jeg kanskje får til noe :-)

Jeg driver nå med tableview og har fått dette til å fungere med searchbar og det er greit nok, men nå prøver jeg å gjøre det slik at når jeg trykker på en av seksjonene så går jeg vidre inn på en annen side, så spørsmålet mitt er:

Er det noen som vet hvordan jeg får seksjonene i tableview til å gå til en ny side/view når jeg trykke på den?

Takk på forhånd! :-)
medlem i 173 måneder
 

Re: XCode spørsmål

Innleggav i-Simen » søn 06.01.2013 23:45

Bruk delegate metoden til UITableView: tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath.

Forslag:

Kode: Merk alt
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
        // Husk #import "(Din ViewController som du vil gå videre til)"
       (Din ViewController som du vil gå videre til) *viewController = [[(Din       viewController) alloc] init];
       [self.navigationController pushViewController:viewController animated:YES];
}

Brukerens avatar
medlem i 156 måneder
 

Re: XCode spørsmål

Innleggav imacthat » man 07.01.2013 12:30

Hei! takk for svar!
Jeg skal prøve det ut :-)

Dette er koden jeg allerede har skrevet:


#import "ViewController.h"

@interface ViewController ()
{
NSMutableArray *totalStrings; // Alle "strings"/"objekter" i listen
NSMutableArray *filteredStrings; //De "stringsene"/"objektene" som blir filtrert ut når brukeren skriver tekst i Searchbaren
BOOL isFiltered;
}
@end

@implementation ViewController

- (void)viewDidLoad
{
[super viewDidLoad];
self.mySearchBar.delegate = self;
self.myTableView.delegate = self;
self.myTableView.dataSource = self;

totalStrings = [[NSMutableArray alloc]initWithObjects:@"One", @"Two", @"Three", @"Four", @"Five", @"Six", @"Seven", nil];
}

-(void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText
{
if (searchText.length == 0) {
isFiltered = NO;
}
else
{
isFiltered = YES;
filteredStrings = [[NSMutableArray alloc]init];

for (NSString *str in totalStrings) {
NSRange stringRange = [str rangeOfString:searchText options:NSCaseInsensitiveSearch];

if (stringRange.location != NSNotFound) {
[filteredStrings addObject:str];
}
}
}
[self.myTableView reloadData];
}

-(void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
[self.mySearchBar resignFirstResponder];
}

// table view datasource and delegate methods...

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

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
if (isFiltered) {
return [filteredStrings count];
}
return [totalStrings count];
}

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

if (!cell) {
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (!isFiltered) {
cell.textLabel.text = [totalStrings objectAtIndex:indexPath.row];
}
else //it is filtered
{
cell.textLabel.text = [filteredStrings objectAtIndex:indexPath.row];
}
return cell;
}


- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}

@end



EDIT:

En ting jeg ikke skjønner er hvordan jeg importerer den nye viewen min?
medlem i 173 måneder
 


Returner til Programmering



Hvem er i Forumene

Registrerte brukere: Ingen registrerte brukere