首先:我知道有些人已经发布了这样的话题,但没有人在所有这些话题中给出明确答案.
我的应用程序中有一个设置-UITableView.现在我想添加一个TableViewCell,我可以用UIPickerView在一些数字之间进行选择.
在tableView didSelectRowAtIndexPath方法中,我为右侧单元格创建了if语句
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row == 1){
}
}
Run Code Online (Sandbox Code Playgroud)
如何为此单元格添加UIPickerView?它应该从底部向上滑动,如果有类似"完成"按钮的话会很好.
我正在更改组件(特别是组件的数量和颜色),在我称之为pickerOne的UIPickerView中,因此在进行更改后,我调用:
[pickerOne reloadData];
Run Code Online (Sandbox Code Playgroud)
它似乎工作得很好但是,我收到了一个编译警告:
warning: 'UIPickerView' may not respond to '-reloadData'
Run Code Online (Sandbox Code Playgroud)
虽然这似乎有效,但我还应该使用其他方法重新加载数据吗?
谢谢
我不是想调整PickerView的高度.我没有使用默认大小,我认为是320 x 216.我创建此代码以在我的popovercontroller中显示pickerView,但是,我在控制台上收到这些消息:
2
011-06-30 13:18:28.125 MiGenome[64357:207] -[UIPickerView setFrame:]: invalid height value 1024.0 pinned to 216.0
2011-06-30 13:18:28.126 MiGenome[64357:207] -[UIPickerView setFrame:]: invalid height value 448.0 pinned to 216.0
2011-06-30 13:18:28.127 MiGenome[64357:207] -[UIPickerView setFrame:]: invalid height value -16.0 pinned to 162.0
Run Code Online (Sandbox Code Playgroud)
我不知道为什么我得到这个,因为我试图在popover中使用选择器默认大小.这是我的代码.谢谢.
- (IBAction)presentSortPopover {
UIViewController *sortViewController = [[UIViewController alloc] init];
UIPickerView *sortPickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 0, sortViewController.view.bounds.size.width, sortViewController.view.bounds.size.height)];
sortViewController.view = sortPickerView;
sortViewController.contentSizeForViewInPopover = CGSizeMake(320, 216);
sortPickerView.delegate = self;
sortPickerView.dataSource = self;
sortPickerView.showsSelectionIndicator = YES;
self.SortPopover = [[UIPopoverController alloc] initWithContentViewController:sortViewController]; …Run Code Online (Sandbox Code Playgroud) 我注意到UIDatePicker不适用于iOS 5.0或5.1中的NSHebrewCalendar.我决定尝试写自己的.我对如何填充数据以及如何以合理且内存有效的方式维护日期的标签感到困惑.
每个组件中实际有多少行?什么时候用新标签"重新加载"行?
我要试一试,我会发现,但如果你知道的话,请发帖.
基本上我想让用户点击文本字段,它会显示一个填充的选择器视图而不是键盘.这也需要一个带有完成按钮的工具栏以及Im假设.我目前将字段设置为输出和操作,而不是更多.我还有一个代码中的动作表,用于当用户提交内容时,如果这对于可能使用动作表也有任何不同.
我尝试研究这个主题,但99%的主题是使用datepickers而不是pickerviews(或非常旧的代码).
这是一张图片,供参考.

任何人都可以描述如何使用XCode在monotouch中创建UIPickerView并使用示例数据填充它吗?
我确实看过这里的例子:https://github.com/xamarin/monotouch-samples/blob/master/MonoCatalog-MonoDevelop/PickerViewController.xib.cs但这对我来说创建我的UIPickerView并不是很有帮助XCode.这是我到目前为止所拥有的:
public partial class StatusPickerPopoverView : UIViewController
{
public StatusPickerPopoverView (IntPtr handle) : base (handle)
{
pickerStatus = new UIPickerView();
pickerStatus.Model = new StatusPickerViewModel();
}
public StatusPickerPopoverView (): base ()
{
}
public class StatusPickerViewModel : UIPickerViewModel
{
public override int GetComponentCount (UIPickerView picker)
{
return 1;
}
public override int GetRowsInComponent (UIPickerView picker, int component)
{
return 5;
}
public override string GetTitle (UIPickerView picker, int row, int component)
{
return "Component " + …Run Code Online (Sandbox Code Playgroud) 我是iOS开发人员的完全初学者,我想创建一个小iOS应用程序.在这个应用程序中,3 UIPickerViews应该显示不同的数据.
我的问题在于显示屏.我习惯在Android或Windows手机上开发,我不明白如何UIPickerViews用不同的数据填充.
这是我已编写的代码:
//
// ViewController.swift
// iphoneVersion
//
// Created by fselva on 13/05/2015.
// Copyright (c) 2015 fselva. All rights reserved.
//
import UIKit
class ViewController: UIViewController, UIPickerViewDelegate{
@IBOutlet weak var pickerView1: UIPickerView!
@IBOutlet weak var pickerView2: UIPickerView!
@IBOutlet weak var pickerView3: UIPickerView!
var test = ["Todo","Waiting","Maybe","Inbox","Note"]
var test2 = ["@Office","@Computer","@Home","@Meeting", "@Read", "@Achat", "@Call"]
override func viewDidLoad() {
super.viewDidLoad()
pickerView1.tag = 1
pickerView2.tag = 2
pickerView3.tag = 3
// Do any additional setup after …Run Code Online (Sandbox Code Playgroud) 我在Xcode 8中构建我的项目.UIPickerView分隔线在iOS 10模拟器和设备中不可见,但在iOS 9.3设备和模拟器上工作正常.我尝试在XIB中调整UIPickerView背景颜色,自动布局和一切可能,但没有任何作用.有人对此有所了解吗?
这是一个包含UIPickerView的自定义视图
-(void)layoutSubviews{
isShown = NO;
[super layoutSubviews];
//self.selectedDic = nil;
self.doneBtn.tintColor = COLOR_DB3535;
self.pickerView.backgroundColor = COLOR_DEDEDE;
self.pickerView.showsSelectionIndicator = YES;
[self.doneBtn setTitle:NSLocalizedString(@"App_Generic_Button_Text_Done", @"")];
}
-(UIView*)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view{
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 50)];
label.tintColor = [UIColor clearColor];
label.backgroundColor = [UIColor yellowColor];
label.textColor = COLOR_666;
label.font = [FontsManager getFONT_ROBOTO_LIGHT_16];
label.textAlignment = NSTextAlignmentCenter;
NSDictionary *dict = [dataArray objectAtIndex:row];
label.text = @"Test";
return label;
}
Run Code Online (Sandbox Code Playgroud) 我有一个表视图,其中嵌入了UITextFields来输入一些数据.它还有另外两个弹出UIPickerView和UIDatePicker的字段 - 如Apple的DateCell示例所示.
大多数情况下它可以工作,但我无法弄清楚如何从文本字段键盘干净地过渡到其他选择器 - 一个滑出,一个滑入 - 它看起来很奇怪,桌面视图上的滚动位置有时会搞砸 - 一切滚动顶部.
我想要做的是替换文本字段键盘,而不用它动画离开,没有它将表视图恢复到完整大小.
有线索吗?
我设立一个UIPickerView喜欢有选择选择一个,选项B,选项C等.我试图解释Apple的示例代码,但对于像我这样的初学者来说这似乎很难理解.如果可能的话,我也希望从选择器视图中选择将我带到另一个页面.
uipickerview ×10
ios ×6
objective-c ×5
iphone ×4
uidatepicker ×2
c# ×1
choice ×1
ios10 ×1
ios5 ×1
swift ×1
uikeyboard ×1
uitableview ×1
uitextfield ×1
xamarin.ios ×1
xcode ×1
xcode8 ×1