1

我是这个 iphone 开发的新手。我现在遇到了一个问题。在我的应用程序中,我需要显示多个标签的封面流。因此,我添加了一个图像作为视图的子视图,然后将标签添加为图像视图的子视图。前 7 个元素的一切工作正常但是当我滚动它时,它再次显示相同的元素,我正在使用 https://github.com/nicklockwood/iCarousel 这个来实现覆盖流

 - (UIView *)carousel:(iCarousel *)carousel viewForItemAtIndex:(NSUInteger)index    reusingView:(ReflectionView *)view
{


UIImageView *imageView =nil;
UILabel *yourLabel=nil;
UILabel *yourLabel1=nil;
UILabel *yourLabel2=nil;
cardAvailableDataObject *singleCard=[self.cards objectAtIndex:index];

if (view == nil)
{
    //set up reflection view
    view = [[[ReflectionView alloc] initWithFrame:CGRectMake(0,0,200,self.view.frame.size.width/1.42)] autorelease];
    imageView = [ [ UIImageView alloc ] initWithFrame:CGRectMake(0,0,200,self.view.frame.size.width/1.42)];
    [view addSubview:imageView];

    yourLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, -5, 200, 50)];
    yourLabel.textAlignment = UITextAlignmentCenter;


    [yourLabel setTextColor:[UIColor colorWithRed:(38/255.f) green:(171/255.f) blue:(226/255.f) alpha:1.0f]];  
    [yourLabel setBackgroundColor:[UIColor clearColor]];
    [yourLabel setFont:[UIFont fontWithName: @"Trebuchet MS" size: 17.0f]]; 
    [imageView addSubview:yourLabel];


    yourLabel1 = [[UILabel alloc] initWithFrame:CGRectMake(90, 40, 300, 20)];


    [yourLabel1 setTextColor:[UIColor blackColor]];
    [yourLabel1 setBackgroundColor:[UIColor clearColor]];
    [yourLabel1 setFont:[UIFont fontWithName: @"Trebuchet MS" size: 12.0f]]; 
    [imageView addSubview:yourLabel1];




    yourLabel2 = [[UILabel alloc] initWithFrame:CGRectMake(90, 61, 300, 20)];

    [yourLabel2 setTextColor:[UIColor blackColor]];
    [yourLabel2 setBackgroundColor:[UIColor clearColor]];
    [yourLabel2 setFont:[UIFont fontWithName: @"Trebuchet MS" size: 12.0f]]; 
    [imageView addSubview:yourLabel2];


}
else
{
    imageView = [[view subviews] lastObject];
    yourLabel = [[imageView subviews] lastObject];
    yourLabel1 = [[imageView subviews] lastObject];
    yourLabel2= [[imageView subviews] lastObject];
}



 yourLabel.text=singleCard.name; 

 yourLabel2.text=singleCard.companyname; 
 yourLabel1.text=singleCard.designation;
 imageView.image=[profile objectAtIndex:index];


return view;



  }

这是我的代码。任何人都可以建议如何解决这个问题

4

0 回答 0