2011-03-17 118 views
0

中添加了10个标签(标签包含一些数据)以滚动视图.i想要获得特定位置的标签值。可以请你知道如何获取在那个location.please值给出建议为这是我写我。怎么能得到用户选择的语言如何从滚动视图的子视图(UILabel)中获取我在iphone

-(void)printLanguage 
{ 
    NSLog(@"in print language method"); 

    //int y=0; 
    //NSMutableArray *languageArray=[[NSMutableArray alloc]initWithObjects:@"Chinese",@"Spanish",@"English",@"Arabic",@"Hindi",@"Bengali",@"Portuguese",@"Russian",@"Japanese",@"German",nil]; 
    //UILabel *languageLabel=[[UILabel alloc]initWithFrame:CGRectMake(0, y ,90,30)]; 

    languagValue=0; 

    int y=0; 
    NSMutableArray *languageArray=[[NSMutableArray alloc]initWithObjects:@"Chinese",@"Spanish",@"English",@"Arabic",@"Hindi",@"Bengali",@"Portuguese",@"Russian",@"Japanese",@"German",nil]; 


for(languagValue=0;languagValue<[languageArray count];languagValue++) 
{ 
    UILabel *languageLabel=[[UILabel alloc]initWithFrame:CGRectMake(0, y ,90,30)]; 
    NSLog(@"array count is @%d",[languageArray count]); 
    languageLabel.text=[languageArray objectAtIndex:languagValue]; 
    NSLog(@"array objectat index is @%@",[languageArray objectAtIndex:languagValue]); 
    languageLabel.font=[UIFont systemFontOfSize:19.0]; 
    languageLabel.backgroundColor=[UIColor clearColor]; 
    [languageScrollView addSubview:languageLabel]; 
    // [languageScrollView addSubview:languageLabel]; 
    //y+=90;   
    y+=languageLabel.frame.size.height; 
    [languageLabel release]; 

} 

    [languageScrollView setShowsHorizontalScrollIndicator:NO]; 
    [languageScrollView setShowsVerticalScrollIndicator:NO]; 
    [languageScrollView setContentSize:CGSizeMake(genderScrollView.frame.size.width, y)]; 

} 

谢谢价值的代码,

吉里什

回答

1
这一切的基础设施 UITableView更好

UILabel不是交互式组件Girish。所以你不能得到它的选择事件。更好地使用UIButtons。 我编辑了您的代码并添加了一个方法。只需使languageArray全局和代码工作正常。

-(void)youMethod 
{ 
    //int y=0; 
    //NSMutableArray *languageArray=[[NSMutableArray alloc]initWithObjects:@"Chinese",@"Spanish",@"English",@"Arabic",@"Hindi",@"Bengali",@"Portuguese",@"Russian",@"Japanese",@"German",nil]; 
    //UILabel *languageLabel=[[UILabel alloc]initWithFrame:CGRectMake(0, y ,90,30)]; 

    languagValue=0; 

    int y=0; 
    NSMutableArray *languageArray=[[NSMutableArray alloc]initWithObjects:@"Chinese",@"Spanish",@"English",@"Arabic",@"Hindi",@"Bengali",@"Portuguese",@"Russian",@"Japanese",@"German",nil]; 


    for(languagValue=0;languagValue<[languageArray count];languagValue++) 
    { 
     UILabel *languageLabel=[[UILabel alloc]initWithFrame:CGRectMake(0, y ,90,30)]; 
     UIButton * btn = [UIButton buttonWithType:UIButtonTypeCustom]; 
     btn.frame = CGRectMake(0, y ,90,30); 
     btn.tag = languagValue; 
     [btn addTarget:self action:@selector(languageSelected:) forControlEvents:UIControlEventTouchUpInside]; 
     NSLog(@"array count is @%d",[languageArray count]); 
     languageLabel.text=[languageArray objectAtIndex:languagValue]; 
     NSLog(@"array objectat index is @%@",[languageArray objectAtIndex:languagValue]); 
     languageLabel.font=[UIFont systemFontOfSize:19.0]; 
     languageLabel.backgroundColor=[UIColor clearColor]; 
     [languageScrollView addSubview:languageLabel]; 
     [languageScrollView addSubview:btn]; 
     // [languageScrollView addSubview:languageLabel]; 
     //y+=90;   
     y+=languageLabel.frame.size.height; 
     [languageLabel release]; 

     } 
     [languageScrollView setShowsHorizontalScrollIndicator:NO]; 
     [languageScrollView setShowsVerticalScrollIndicator:NO]; 

     [languageScrollView setContentSize:CGSizeMake(genderScrollView.frame.size.width, y)]; 

} 

-(void)languageSelected:(id)sender 
{ 
    UIButton * btn = (UIButton*)sender; 
    int selectedIndex = btn.tag; 
    NSString * selectedLanguage = [languageArray objectAtIndex:selectedIndex]; 
} 
+0

Vaibhav的感谢的值üresponse.its工作.. – girish 2011-03-17 15:15:09

+0

netime哥们! :) – 2011-03-18 10:02:07

2

,必须有人已经设定了这些价值观,不是吗? :)为什么你会问标签的价值,当你已经必须知道它设置它的第一位。

编辑:看到你的代码,你大概可以从滚动视图的contentOffset弄清楚,但似乎你会用UIPicker或者免费提供

+0

我会告诉我的代码ü可以解释我什么,我必须让特定使用者所选择的价值 – girish 2011-03-17 11:19:38

相关问题