【问题标题】:Custom UIPickerView with Custom Background color具有自定义背景颜色的自定义 UIPickerView
【发布时间】:2012-07-10 16:35:25
【问题描述】:

我创建了一个示例选取器视图,它将显示一些详细信息。使用以下方法设置背景颜色:

_pickerView.backgroundColor = [UIColor redColor]; 

似乎没有工作。但我希望我可以创建一个如下图所示的选择器视图

我想要做的是,整个 PickerView 背景颜色不应该是白色的,它应该用我给的 UIColor 填充。那可能吗??怎么办??

【问题讨论】:

  • 你想改变选择器选择的颜色还是整个背景的颜色?
  • 我想改变整个 BG 颜色,现在是白色的。甚至选择的颜色(但让我先做BG,我也会改变选择的颜色)
  • 查看发布的链接将解决您的问题。
  • @Perseus:你可以看看我的回答。并检查与您所要求的完全相同的最后一个链接...

标签: ios objective-c cocoa-touch uipickerview picker


【解决方案1】:

除了 Nina 的回答之外,下面是一些很好的自定义 Picker 视图控件,它们在性能和可自定义方面非常好用。

  1. http://www.cocoacontrols.com/platforms/ios/controls/cppickerview
  2. http://www.cocoacontrols.com/platforms/ios/controls/afpickerview
  3. http://www.cocoacontrols.com/platforms/ios/controls/v8horizontalpickerview(水平选取器视图)

【讨论】:

  • heidibrebels.be/blog/archives/2012/… 这个真的很酷!!谢谢分享!!
  • 绝对...这个投票鼓励我们帮助他人... ;-)
  • @DShah heidibrebels.be 链接已损坏
  • @Rooky:我相信该网站的作者已经删除了该页面。对此感到抱歉。让我删除链接。
【解决方案2】:

我编写了一个自定义选择器视图,它使用 UITableView 作为起点。随意自定义它。

https://github.com/derekju/DjuPickerView

【讨论】:

    【解决方案3】:

    您可以通过将 tableview 单元格放入其中来更改选定的颜色。

    - (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view {
    UITableViewCell *cell = (UITableViewCell *)view;
    
    if( cell == nil ) {
        cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:nil] autorelease];
        [cell setBackgroundColor:[UIColor redColor]];
    
        [cell setBounds: CGRectMake(0, 0, cell.frame.size.width -20 , 44)];
        cell.textLabel.text = [self.userNameArray objectAtIndex:row];
        cell.userInteractionEnabled = NO;
    }
    
    return cell;
    }
    

    【讨论】:

    【解决方案4】:

    自定义 UIPickerView 很困难。

    您可以选择以默认外观使用它,或者尝试使用另一个 UIKit 组件(例如 UITableView)来模拟 UIPickerView。有一些库正在使用 UITableView 来模拟更灵活的 UIPickerView。

    【讨论】:

      【解决方案5】:

      UIPickerView 有子视图。将图像分配给视图并将其添加到索引 2 处的子视图中,将更改选取器视图的背景。

      我也遇到过同样的问题 :-) 在这里查看我的问题!! Customize UIPickerView's Skin with images

      或者你可以使用 AFPickerView

      【讨论】:

        【解决方案6】:

        API 不提供更改选择拨号器样式和颜色的方法。您只能更改您想要设计的选择器的内部视图。 由于 UIPickerView 没有 UI_APPEARANCE_SELECTOR。

        查看以下链接将对您有所帮助。 Custom iOS UIDatepicker using UIAppearance

        【讨论】:

          猜你喜欢
          • 2016-08-26
          • 1970-01-01
          • 1970-01-01
          • 2011-09-12
          • 1970-01-01
          • 1970-01-01
          • 2012-08-31
          • 1970-01-01
          • 2018-06-19
          相关资源
          最近更新 更多