首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UIPickerView交互式iOS 7割线区

UIPickerView交互式iOS 7割线区
EN

Stack Overflow用户
提问于 2013-10-07 03:57:30
回答 1查看 907关注 0票数 0

当我用多个组件制作一个长的选择器时,只有中心附近的组件才会对点击到选择的特性做出反应。

例如,如果您想在选定的行下选择下一行,您应该能够点击它,使其动画化到选定区域。这个特性在iOS 7中仍然存在,但是UIPicker中实际接受抽头的区域是一个很小的窗口,不大于200 no。

是否有任何方法来扩展这个可点击的区域以包括整个UIPickerView,所以每当您点击一行时,它就变成了所选内容?

编辑这是代码,非常标准.

代码语言:javascript
复制
    - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{

    NSLog(@"picked %i %i" , component , row);
}


- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
    return 4;
}

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component {
    return 15;
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{
    return @"";
}

- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
    UILabel *pickersLabel;

    pickersLabel =[[UILabel alloc] initWithFrame:CGRectMake(0.0, 0.0, view.frame.size.width , view.frame.size.height )];
    pickersLabel.text = [NSString stringWithFormat:@"thing %i" , row ];


    pickersLabel.backgroundColor = [UIColor clearColor];

    pickersLabel.backgroundColor = [UIColor colorWithRed:1/255.0 green:1/255.0 blue:2/255.0 alpha:0.05];

    pickersLabel.opaque = NO;
    [view addSubview:pickersLabel];
    return pickersLabel;
}
EN

回答 1

Stack Overflow用户

发布于 2013-10-30 16:29:19

我在UIPickerViews上遇到了很大的问题,而不是iOS 7中的故事板。我不确定是否在故事板的幕后进行了一些优化,或者这是否是一个直截了当的错误,但值得一试--我现在使用的是一个从存储板上来的选择器视图,我可以点击非选定的行,然后它们向上滚动并被选中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19216821

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档