2014-02-21 111 views
0

在我的代码中,我试图设置标签在iCarouselView.My icarousel包含标签和textView,所以我想设置标签,但它没有正确设置。我有几个月和设置像这样的每个数字标签的数组。iCarousel没有正确设置标签

 (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view 
    { 
     if (!view) 
    { 
     UIViewController * viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PopUpView"]; 
    view = [viewController.view viewWithTag:999]; 
    UILabel *label=(UILabel*)[viewController.view viewWithTag:109]; 
    label.text = [_monthsArray objectAtIndex:index]; 
    CGRect Frame = CGRectMake(view.frame.origin.x, view.frame.origin.y+100, view.frame.size.width, view.frame.size.height); 
    view.frame = Frame; 
} 
return view;} 

我加载外观图popUpView在故事板,并使用标签获取标签。 而我正在将轮播计数归为[monthsArray count]。 轮播委托和数据源也被设置,并且在iCarousel上也调用reloadData方法。

我得到的输出是这样的。

|一月,二月,三月,十一月,十二月|

请告诉我我错了什么?现在该做什么?

+0

iCaurosel代表将采取一种观点。 – nanjunda

回答

0

更新你的代码下面一个 -

- (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index reusingView:(UIView *)view 
{ 
    if (!view){ 
     UIViewController * viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"PopUpView"]; 
     view = [viewController.view viewWithTag:999]; 
     CGRect Frame = CGRectMake(view.frame.origin.x, view.frame.origin.y+100, view.frame.size.width, view.frame.size.height); 
     view.frame = Frame; 
    } 

    UILabel *label=(UILabel*)[view viewWithTag:109]; 
    label.text = [_monthsArray objectAtIndex:index]; 

    return view; 
} 

iCaurosel将采取UIView的,在你的情况,你要创建一个视图控制器,这是不保留,是危险的。看看你是否改变它通过习惯Xib查看。