我是xcode的新手并且已经搜索了教程,但大多数只是提供如何使用他们的代码并使其搜索,我已经有一个应用程序,并希望在其中实现搜索栏。我想知道有人能指出我正确的方向吗?这是.m
#import "RootViewController.h"
#import "AppDelegate.h"
#import "DetailViewController.h"
@implementation RootViewController
#pragma mark -
#pragma mark Synthesizers
@synthesize table;
@synthesize sitesList;
@synthesize imagesList;
@synthesize descArray;
@synthesize bannerImages;
@synthesize childController;
#pragma mark -
#pragma mark View methods
- (void)viewDidLoad {
NSArray *sites = [[NSArray alloc] initWithObjects:
@"#1 or NUMBER ONE",
@"#2 or NUMBER TWO",
@"#3 or NUMBER THREE",
@"1 or ONE",
@"10-100,10-1,10-200,10-2,10-4 and 20",
@"1000H PAPER",
@"129 or HEAVY FROST",
@"18% GRAY or GREY CARD",
@"180 DEGREE RULE",
@"2 or TWO",
@"214 or FULL TOUGH SPUN",
@"215 or HALF TOUGH SPUN",
@"216 or FULL WHITE DIFFUSION",
@"220 or WHITE FROST",
@"229 or QUARTER TOUGH SPUN",
@"250 or HALF WHITE DIFFUSION",
@"251 or QUARTER WHITE DIFFUSION",
@"252 or EIGHTH WHITE DIFFUSION",
@"253 or FULL HAMPSHIRE",
@"254 or NEW HAMPSHIRE",
@"255 or HOLLYWOOD FROST",
@"256 or HALF HAMPSHIRE FROST",
@"257 or QUARTER HAMPSHIRE FROST",
@"258 or EIGHTH HAMPSHIRE FROST",
@"3200K or TUNGSTEN",
nil];
self.sitesList = sites;
[sites release];
NSString *filePath = [[NSBundle mainBundle] pathForResource:@"Descriptions" ofType:@"plist"];
NSArray *desc = [[NSArray alloc] initWithContentsOfFile:filePath];
self.descArray = desc;
[desc release];
UIImage *texas = [UIImage imageNamed:@"1andtexas.jpg"];
UIImage *cali = [UIImage imageNamed:@"2andcalifornia.jpg"];
UIImage *ny = [UIImage imageNamed:@"3andnewyork.jpg"];
UIImage *tmark = [UIImage imageNamed:@"1Tmark.jpg"];
UIImage *walkie = [UIImage imageNamed:@"Walkietalkie.jpg"];
UIImage *onekh = [UIImage imageNamed:@"Tracingpaper.jpg"];
UIImage *onetwonine = [UIImage imageNamed:@"diffusion.jpg"];
UIImage *greycard = [UIImage imageNamed:@"Greycard.jpg"];
UIImage *oneeighty = [UIImage imageNamed:@"Oneeighty.jpg"];
UIImage *two = [UIImage imageNamed:@"Two.jpg"];
UIImage *twofourteen = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofifteen = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twosixteen = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twotwenty = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twotwentynine = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofifty = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftyone = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftytwo = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftythree = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftyfour = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftyfive = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftysix = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftyseven = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *twofiftyeight = [UIImage imageNamed:@"Diffusion.jpg"];
UIImage *thirtytwohk = [UIImage imageNamed:@"3200k.jpg"];
NSArray *banners = [[NSArray alloc] initWithObjects:texas,
cali,
ny,
tmark,
walkie,
onekh,
onetwonine,
greycard,
oneeighty,
two,
twofourteen,
twofifteen,
twosixteen,
twotwenty,
twotwentynine,
twofifty,
twofiftyone,
twofiftytwo,
twofiftythree,
twofiftyfour,
twofiftyfive,
twofiftysix,
twofiftyseven,
twofiftyeight,
thirtytwohk,
nil];
self.bannerImages = banners;
[banners release];
[app release];
[creat release];
[free release];
[net release];
[rock release];
[tuts release];
[work release];
*/
[super viewDidLoad];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
// Support all the orientations except for PortraitUpsideDown
return (interfaceOrientation != UIInterfaceOrientationPortraitUpsideDown);
}
#pragma mark -
#pragma mark Table view datasource methods
-(NSInteger) numberOfSectionsInTableView:(UITableView *)tableView
{
return 1;
}
// A-Z
- (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView {
NSMutableArray *toBeReturned = [[NSMutableArray alloc]init];
for(char c = 'A'; c <= 'Z'; c++) [toBeReturned addObject:[NSString stringWithFormat:@"%c",c]];
return toBeReturned;
}
-(NSInteger) tableView:(UITableView *)table numberOfRowsInSection:(NSInteger)section
{
return [sitesList count];
}
-(UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"CellIdentifier";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
}
// Set the title for the cell
cell.textLabel.text = [sitesList objectAtIndex:indexPath.row];
cell.imageView.image = [imagesList objectAtIndex:indexPath.row];
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
// Return the cell
return cell;
}
#pragma mark -
#pragma mark Table view delegate methods
-(CGFloat) tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 50; // Default height for the cell is 44 px;
}
-(NSString *) tableView:(UITableView *)tableView titleForFooterInSection:(NSInteger)section
{
return @"Flm Set Decipher";
}
-(void) tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
AppDelegate *delegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
DetailViewController *detailVC = [[DetailViewController alloc] initWithNibName:@"DetailViewController" bundle:nil];
detailVC.banner = [bannerImages objectAtIndex:indexPath.row];
detailVC.description = [descArray objectAtIndex:indexPath.row];
detailVC.title = [sitesList objectAtIndex:indexPath.row];
self.childController = detailVC;
[delegate.navigationController pushViewController:childController animated:YES];
[detailVC release];
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
#pragma mark -
#pragma mark Memory Management
- (void)didReceiveMemoryWarning {
NSLog(@"Memory warning!");
[super didReceiveMemoryWarning];
}
- (void)viewDidUnload {
self.table = nil;
self.sitesList = nil;
self.imagesList = nil;
self.descArray = nil;
self.bannerImages = nil;
self.childController = nil;
[super viewDidUnload];
}
- (void)dealloc {
[table release];
[sitesList release];
[imagesList release];
[descArray release];
[bannerImages release];
[childController release];
[super dealloc];
}
@end
答案 0 :(得分:0)