相关疑难解决方法(0)

如何设置UIPickerView的默认值

我的UIPickerView有问题.我在EU AP和NA中有3个值.当我启动应用程序欧盟似乎被选中但是当我做一个NSLog(@"%@", [regions objectAtIndex:row]);我只回来时(null),现在当我触摸UIPickerView时,选择了EU值并且我"EU"从NSLog返回.

我的问题是:

当用户仅启动应用程序并且什么都不触摸时,如何定义所选的默认值(不仅是标签).

编辑:这是我获取所选项目的代码:

#pragma mark -
#pragma mark PickerView DataSource

- (NSInteger)numberOfComponentsInPickerView:
(UIPickerView *)pickerView
{
    return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView
numberOfRowsInComponent:(NSInteger)component
{
    return [regions count];
}
- (NSString *)pickerView:(UIPickerView *)pickerView
             titleForRow:(NSInteger)row
            forComponent:(NSInteger)component
{
    return [regions objectAtIndex:row];
}

#pragma mark -
#pragma mark PickerView Delegate
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row
      inComponent:(NSInteger)component
{

                selectedRegion = [[NSString alloc] initWithFormat:
                              @"%@", [regions objectAtIndex:row]];
    NSLog(@"%@", selectedRegion);


}
Run Code Online (Sandbox Code Playgroud)

xcode objective-c uipickerview ios swift

63
推荐指数
5
解决办法
10万
查看次数

为 UIPicker 设置 selectedRow 的问题

我在为 UIPicker 设置初始值时遇到问题。我有: UIPicker 在我的故事板中。连接到 TableViewController(我有静态表)类作为 IBOutlet:

在此处输入图片说明

class SettingsTableViewController: UITableViewController, UIPickerViewDelegate, UIPickerViewDataSource {
    //Variables
    let pricePerHour: Float = 0
    let defaults = UserDefaults.standard
    let currencies = ["USD", "RUR", "UAH", "BYN", "NIS"]

    //IBOutlets
    @IBOutlet weak var isTimeCafeSwitch: UISwitch!
    @IBOutlet weak var pricePerHourTextField: UITextField!
    @IBOutlet var currencyPicker: UIPickerView!
Run Code Online (Sandbox Code Playgroud)

我用这个答案作为设置初始值的例子。但是我收到 NSRangeException 是因为我想我正在尝试在 UI 选择器完全初始化之前为其设置值。我在我的代码中添加了一些打印来显示问题:

func numberOfComponents(in pickerView: UIPickerView) -> Int {
    return 1
}

func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
    print("Picker view initialized - getting number of …
Run Code Online (Sandbox Code Playgroud)

concurrency uipickerview swift3

1
推荐指数
1
解决办法
388
查看次数

标签 统计

uipickerview ×2

concurrency ×1

ios ×1

objective-c ×1

swift ×1

swift3 ×1

xcode ×1