如何自定义UIPickerView的高度?

问题描述 投票:3回答:1

如何自定义UIPickerView的高度?我希望它比250高。

我已经完成以下操作,但无法设置给定的高度。

-(void)pickerview:(id)sender
{
    pickerView=[[UIPickerView alloc] initWithFrame:CGRectMake(0,200,320,400)];
    pickerView.transform = CGAffineTransformMakeScale(0.75f, 0.75f);
    pickerView.delegate = self;
    pickerView.dataSource = self;
    pickerView.showsSelectionIndicator = YES;
    pickerView.backgroundColor = [UIColor lightGrayColor];
    [pickerView selectRow:1 inComponent:0 animated:YES];
    [self.view addSubview:pickerView];
    // [contentView addSubview:pickerView];
}
ios objective-c xcode customization uipickerview
1个回答
8
投票

这里UIPickerView只有三个有效的高度(162.0、180.0和216.0)。

您可以使用CGAffineTransformMakeTranslationCGAffineTransformMakeScale函数适当地使选择器适合您的使用。

示例:

CGAffineTransform t0 = CGAffineTransformMakeTranslation( 0,
    pickerview.bounds.size.height/2 );
CGAffineTransform s0 = CGAffineTransformMakeScale(1.0, 0.5);
CGAffineTransform t1 = CGAffineTransformMakeTranslation( 0,
    pickerview.bounds.size.height/-2 );
pickerview.transform = CGAffineTransformConcat( t0,
    CGAffineTransformConcat(s0, t1) );

上面的代码将选取器视图的高度更改为一半,然后将其重新放置到准确的(Left-x1,Top-y1)位置。

在此参考更多。How to change UIPickerView height

© www.soinside.com 2019 - 2024. All rights reserved.