2013-04-25 3 views
0

새 날 새로운 문제 같아요.PFQueryTableView 업데이트/업데이트 방법

5 개의 버튼이있는 JASidePanel을 사용하고 있습니다. 각 버튼은 변수 값을 변경합니다. 변수는 MyTableController.m에서 parseClassName으로 사용됩니다.

이제 문제
- (id)initWithStyle:(UITableViewStyle)style 
{ 
    self = [super initWithStyle:style]; 
    if (self) { 
     // Custom the table 

     // The className to query on 
     if (_sDay==Nil) { 
      self.parseClassName = @"Montag"; 
     }else{ 
     self.parseClassName = self.sDay; 
     } 
     // The key of the PFObject to display in the label of the default cell style 
     self.textKey = @"Fach"; 

     // Whether the built-in pull-to-refresh is enabled 
     self.pullToRefreshEnabled = YES; 

     // Whether the built-in pagination is enabled 
     self.paginationEnabled = NO; 

     // The number of objects to show per page 
     self.objectsPerPage = 5; 
    } 
    return self; 
} 




- (void)viewDidLoad { 
    [super viewDidLoad]; 

    UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"hintergrund"]]; 
    imageView .frame = CGRectMake(0,0,255,458); 
    [self.view addSubview:imageView]; 


    CGRect frameBtn = CGRectMake(0.0f, 0.0f, 254.0f, 50.0f); 
    self.bMonday = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [self.bMonday setBackgroundImage:[UIImage imageNamed:@"button_rechts_1"] forState:UIControlStateNormal]; 
    [self.bMonday setTitle:@"Montag" forState:UIControlStateNormal]; 
    [self.bMonday setFrame:frameBtn]; 
    [self.bMonday addTarget:self 
        action:@selector(monday:) 
       forControlEvents:UIControlEventTouchUpInside]; 
    [self.view addSubview:self.bMonday]; 



    CGRect frameBtn2 = CGRectMake(0.0f, 50.0f, 254.0f, 50.0f); 
    self.bTuesday = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [self.bTuesday setBackgroundImage:[UIImage imageNamed:@"button_rechts_1"] forState:UIControlStateNormal]; 
    [self.bTuesday setTitle:@"Dienstag" forState:UIControlStateNormal]; 
    [self.bTuesday setFrame:frameBtn2]; 
    [self.bTuesday addTarget:self 
         action:@selector(tuesday:) 
      forControlEvents:UIControlEventTouchUpInside]; 

    [self.view addSubview:self.bTuesday]; 


    CGRect frameBtn3 = CGRectMake(0.0f, 100.0f, 254.0f, 50.0f); 
    self.bWendsday = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [self.bWendsday setBackgroundImage:[UIImage imageNamed:@"button_rechts_1"] forState:UIControlStateNormal]; 
    [self.bWendsday setTitle:@"Mittwoch" forState:UIControlStateNormal]; 
    [self.bWendsday setFrame:frameBtn3]; 
    [self.bWendsday addTarget:self 
         action:@selector(wendsday:) 
      forControlEvents:UIControlEventTouchUpInside]; 

    [self.view addSubview:self.bWendsday]; 


    CGRect frameBtn4 = CGRectMake(0.0f, 150.0f, 254.0f, 50.0f); 
    self.bThursday = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [self.bThursday setBackgroundImage:[UIImage imageNamed:@"button_rechts_1"] forState:UIControlStateNormal]; 
    [self.bThursday setTitle:@"Donnerstag" forState:UIControlStateNormal]; 
    [self.bThursday setFrame:frameBtn4]; 
    [self.bThursday addTarget:self 
         action:@selector(thursday:) 
      forControlEvents:UIControlEventTouchUpInside]; 

    [self.view addSubview:self.bThursday]; 


    CGRect frameBtn5 = CGRectMake(0.0f, 200.0f, 254.0f, 50.0f); 
    self.bFriday = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [self.bFriday setBackgroundImage:[UIImage imageNamed:@"button_rechts_1"] forState:UIControlStateNormal]; 
    [self.bFriday setTitle:@"Freitag" forState:UIControlStateNormal]; 
    [self.bFriday setFrame:frameBtn5]; 
    [self.bFriday addTarget:self 
        action:@selector(friday:) 
      forControlEvents:UIControlEventTouchUpInside]; 

    [self.view addSubview:self.bFriday]; 






} 

-(void)monday:(id)sender { 

    UINavigationController *navController = (UINavigationController*) self.sidePanelController.centerPanel; 

    MyTableController *myNewTableController = (MyTableController*)[navController.viewControllers objectAtIndex:0]; 
    myNewTableController.sDay = @"Montag"; 
    NSLog(@"%@",myNewTableController.sDay); 

} 

-(void)tuesday:(id)sender { 

    UINavigationController *navController = (UINavigationController*) self.sidePanelController.centerPanel; 

    MyTableController *myNewTableController = (MyTableController*)[navController.viewControllers objectAtIndex:0]; 
    myNewTableController.sDay = @"Dienstag"; 
    NSLog(@"%@",myNewTableController.sDay); 


} 
-(void)wendsday:(id)sender { 

    UINavigationController *navController = (UINavigationController*) self.sidePanelController.centerPanel; 

    MyTableController *myNewTableController = (MyTableController*)[navController.viewControllers objectAtIndex:0]; 
    myNewTableController.sDay = @"Mittwoch"; 
    NSLog(@"%@",myNewTableController.sDay); 


} 
-(void)thursday:(id)sender { 

    UINavigationController *navController = (UINavigationController*) self.sidePanelController.centerPanel; 

    MyTableController *myNewTableController = (MyTableController*)[navController.viewControllers objectAtIndex:0]; 
    myNewTableController.sDay = @"Donnerstag"; 
    NSLog(@"%@",myNewTableController.sDay); 


} 
-(void)friday:(id)sender { 

    UINavigationController *navController = (UINavigationController*) self.sidePanelController.centerPanel; 

    MyTableController *myNewTableController = (MyTableController*)[navController.viewControllers objectAtIndex:0]; 
    myNewTableController.sDay = @"Freitag"; 
    NSLog(@"%@",myNewTableController.sDay); 


} 

는 사람이 왜 아이디어가 있습니까의 PFQueryUITableView 새로운 parseClass의 내용을 표시되지 않는 것입니다? 미리 감사드립니다.

답변

0

monday ... friday 방법에서는 sDay을 설정하고 parseClassName에 저장된 값은 변경하지 않습니다. 당신이 그것을 고칠 수있는 한 가지 방법은 당신의 방법

myNewTableController.parseClassName = @"SOME VALUE";

또 다른 옵션은이 코드는 다음

과 같을 것이다 parseClassName 업데이트 너무 sDay에 대한 세터를 정의하는 것입니다 각각에 다음을 추가하는 것입니다
- (void)setSDay:(NSString *)sDay 
{ 
    if (![_sDay isEqualToString:sDay]) { 
     _sDay = sDay; 
     self.parseClassName = sDay; 
    } 
} 
+0

당신 선생님은 굉장합니다! 그 슈퍼 퀵 솔루션에 감사드립니다! 누군가가 동일한 문제를 가지고 있고 새로운 클래스가 할당 된 후에도 테이블을 업데이트하려는 경우 [myNewTableController loadObjects]를 사용할 수 있습니다. – user2321697