Iphone 如何解决带标签的UIscrollview中的问题
我正在做一个关于UIscrollView的小概念。我在scrollview(语言)上附加了10个标签,我想从用户选择的标签中检索标签值。此代码正在执行和运行。但有时它会在没有任何异常/错误的情况下终止 注意:我对第一次出现屏幕时的情况表示怀疑。如果我按下滚动视图向上按钮,滚动视图中的标签将移动到最后一个标签。如果我按下向下按钮,则它将移动第一个标签。仅在第一次出现后,它将向上/向下移动一次 有人能帮我解决这个问题吗Iphone 如何解决带标签的UIscrollview中的问题,iphone,uiscrollview,uilabel,Iphone,Uiscrollview,Uilabel,我正在做一个关于UIscrollView的小概念。我在scrollview(语言)上附加了10个标签,我想从用户选择的标签中检索标签值。此代码正在执行和运行。但有时它会在没有任何异常/错误的情况下终止 注意:我对第一次出现屏幕时的情况表示怀疑。如果我按下滚动视图向上按钮,滚动视图中的标签将移动到最后一个标签。如果我按下向下按钮,则它将移动第一个标签。仅在第一次出现后,它将向上/向下移动一次 有人能帮我解决这个问题吗 -(void)printLanguage { NSLog
-(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;
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)];
}
-(IBAction)languageDownButton:(id)sender
{
NSLog(@"language scroll view up button pressed");
languagValue-=1;
NSLog(@"value of language value is @%d",languagValue);
if(!(languagValue>0))
{
languagValue=0;
}
else if(!(languagValue<10))
{
languagValue=9;
}
else {
NSLog(@"gender value*24 is @%d",(languagValue)*30);
[languageScrollView setContentOffset:CGPointMake(0, (languagValue)*30) animated:YES];
}
}
-(IBAction)languageUpButton:(id)sender
{
NSLog(@"language scroll view down button pressed");
NSLog(@"value of language value is @%d",languagValue);
languagValue+=1;
if(!(languagValue>0))
{
languagValue=0;
}
else if(!(languagValue<10))
{
languagValue=9;
}
else {
NSLog(@"gender value*24 is @%d",(languagValue)*30);
[languageScrollView setContentOffset:CGPointMake(0, (languagValue)*30) animated:YES];
}
}
-(void)打印语言
{
NSLog(@“印刷语言法”);
//int y=0;
//NSMUTABLEARRY*languageArray=[[NSMUTABLEARRY alloc]initWithObjects:@“中文”@“西班牙文”@“英文”@“阿拉伯文”@“印地语”@“孟加拉文”@“葡萄牙语”@“俄语”@“日语”@“德语”,nil];
//UILabel*languageLabel=[[UILabel alloc]initWithFrame:CGRectMake(0,y,90,30)];
languagValue=0;
int y=0;
languageArray=[[NSMutableArray alloc]initWithObjects:@“中文”、“西班牙文”、“英文”、“阿拉伯文”、“印地语”、“孟加拉文”、“葡萄牙文”、“俄文”、“日文”、“德文”、零];
对于(languagValue=0;languagValue0))
{
languagValue=0;
}
else if(!(languagValue0))
{
languagValue=0;
}
否则,如果(!(languagValue您最好使用UITableView,通过它的委托方法,您可以轻松显示您的语言数组。
对于获取所选语言,将使用此委托方法
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
请参阅文档。