【发布时间】:2012-11-26 23:48:37
【问题描述】:
-(UIView *)pickerView:(UIPickerView *)pickerView
viewForRow:(NSInteger)row
forComponent:(NSInteger)component reusingView:(UIView *)view
{
//NSLog(@"%d",component);
// NSLog(@"tag: %d",pickerView.tag);
if([pickerView isEqual:picker1])
{
NSString *arrayName = [[NSString alloc] initWithFormat:@"column%d",component+1];
NSArray *array1 = [self valueForKey:arrayName];
UIImageView *imageView = [array1 objectAtIndex:row];
if ([pickerView selectedRowInComponent:component] == row) {
imageView.frame = CGRectMake(60,60,40,80);//set bigger frame
} else {
//imageView.frame = CGRectMake(30,30,20,60);//set normal frame
}
return imageView;
}
}
- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 80.0;
}
我正在实现自定义 uipicker 以实现以下第一个图像。我要使用 uipicker 选择三个图像。但是,它们都显示在下面第二张图像的屏幕上。我只希望在中间显示占据更大的尺寸而不是如图所示的其他图像。
【问题讨论】:
-
请发布任何代码,当您为这些图像设置框架时,确切的问题是什么?
-
将
barView的框架设置为barView.frame = CGRectMake(...时会发生什么?您只需要为中间的设置一个更大的框架。 -
怎么样?请给个提示好吗?或任何资源?
-
UIImageView *barView = [[UIImageView alloc] initWithImage:bar];barView.frame = CGRectMake(.. //set frame here