2013-05-21 123 views
1

我有一個DetailViewController工作正常。它有標籤和textView。我添加了一個scrollView以允許textView在被選中時向上移動,但在將舊標籤放在scrollView後,標籤不再顯示數據。我一直在使用故事板做UI。我認爲我可以放下滾動視圖並將標籤放置在頂部,並認爲它會起作用。它沒有。ScrollView防止標籤工作

這是爲什麼?

UPDATE:

對於那些誰需要的代碼,那就是:

#import "DetailViewController.h" 

@interface DetailViewController() 
- (void)configureView; 
@end 

@implementation DetailViewController 
@synthesize comment; 
static const CGFloat KEYBOARD_ANIMATION_DURATION = 0.3f; 
#pragma mark - Managing the detail item 

- (void)setDetailItem:(RootBeer*)newDetailItem 
{ 
    if (_detailItem != newDetailItem) { 
     _detailItem = newDetailItem; 

     // Update the view. 
     [self configureView]; 
    } 
} 

- (void)configureView 
{ 
    // Update the user interface for the detail item. 
    [self.view addSubview:]; 
    if (self.detailItem) { 
     self.rootBeerNameLabel.text = [[self.detailItem valueForKey:@"rootBeerName"] description]; 
     self.rootBeerBrewerLabel.text = [[self.detailItem valueForKey:@"rootBeerBrewer"] description]; 
     self.rootBeerLocationLabel.text = [[self.detailItem valueForKey:@"rootBeerLocation"] description]; 
     self.rootBeerDescriptionLabel.text = [[self.detailItem valueForKey:@"rootBeerDescription"] description]; 
     self.rootBeerDetailsLabel.text = [[self.detailItem valueForKey:@"rootBeerDetails"] description]; 
     self.rootBeerNotes.text = self.detailItem.comments.rootBeerComment; 
    } 
} 

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
    [self configureView]; 
} 

- (void)didReceiveMemoryWarning 
{ 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
} 
-(IBAction)cancel:(id)sender{ 
    NSLog(@"Saved!"); 

    [self.navigationController popToRootViewControllerAnimated:YES]; 
} 

-(IBAction)save:(id)sender{ 
    NSManagedObjectContext *context = [self managedObjectContext]; 
    Comments* com = [NSEntityDescription insertNewObjectForEntityForName:@"Comments" inManagedObjectContext:context]; 

    if(self.detailItem){ 
     //update current job 
     [com setValue:self.rootBeerNotes.text forKey:@"rootBeerComment"]; 
     [com setValue:[self.detailItem valueForKey:@"rootBeerId"] forKey:@"rootBeerId"]; 
     [self.detailItem setValue:com forKey:@"comments"]; 

     NSError* error = nil; 
     if(![context save:&error]){ 
      NSLog(@"Can't Save! %@ %@", error, [error localizedDescription]); 
     } 
     NSLog(@"Saved!"); 

    }else{ 
     //create new job 
     NSManagedObject *newJob = [NSEntityDescription insertNewObjectForEntityForName:@"Jobs" inManagedObjectContext:context]; 
     /* 
     [newJob setValue:self.company.text forKey:@"company"]; 
     [newJob setValue:self.position.text forKey:@"position"]; 
     [newJob setValue:self.jobId.text forKey:@"jobId"]; 
     [newJob setValue:self.notes.text forKey:@"notes"]; 

     */ 
     NSError* error = nil; 
     if(![context save:&error]){ 
      NSLog(@"Can't Save! %@ %@", error, [error localizedDescription]); 
     } 
     NSLog(@"Saved!"); 
    } 
    [self.navigationController popToRootViewControllerAnimated:YES]; 


} 
-(NSManagedObjectContext *)managedObjectContext{ 
    NSManagedObjectContext* context = nil; 
    id delegate = [[UIApplication sharedApplication]delegate]; 
    if([delegate performSelector:@selector(managedObjectContext)]){ 
     context=[delegate managedObjectContext]; 
    } 
    return context; 
} 

@end 
+2

也許你應該顯示的代碼,所以我們可以把它理解更多 – Joshua

+0

不,它會幫助,但在這裏你去... – BlackHatSamurai

+0

是它的故事板基礎? –

回答