【问题标题】:Two PickerViews with different values两个不同值的 PickerView
【发布时间】:2012-01-04 15:37:02
【问题描述】:

这是我在一个视图控制器中的两个选择器视图的代码。但是它对我不起作用。

#pragma mark UIPickerViewDelegate methods
    //PickerViewController.m
    - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)thePickerView {
        return 1;
    }

    - (NSInteger)pickerView:(UIPickerView *)thePickerView numberOfRowsInComponent:(NSInteger)component {

        switch ([thePickerView tag]) {
            case 1: //purpose picker        
                return [m_arrPurpose count];            
            case 2:  //second picker
                return [m_arrSweep count];
            default:
                return 0;
                break;
        } 
    }

    - (NSString *)pickerView:(UIPickerView *)thePickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {

        switch ([thePickerView tag]) {
            case 1: //purpose picker
            {
                //cost.text = @"Test";
                Purpose *prp = [m_arrPurpose objectAtIndex:row];
                return [prp m_purposeName];     
            }       
            case 2:  //second picker
            {
                OpenActivity *opn = [m_arrSweep objectAtIndex:row];
                return [opn m_ahhaName];
            }
            default:
                return @"";
                break;
        }
}

任何人都可以帮我解决这个问题.. 谢谢

【问题讨论】:

  • 有什么问题吗?错误、崩溃、日志呢?
  • 你有什么问题?,你在控制台收到什么错误?
  • 要添加到现有的 cmets,您需要告诉我们 什么 不起作用。你得到错误的值,没有值,崩溃,什么?就目前而言,这是无法回答的。
  • Purpose 和 openActivity 类中包含的内容
  • 你把pickers的tag分别设置为1和2了吗?

标签: iphone ios cocoa-touch ios4


【解决方案1】:

听起来您的标签设置不正确,或者您没有连接两个选择器的数据源和委托方法。

在 numberOfRowsInComponent 和 titleForRow: 方法中添加一些 NSLog 语句。

在日志中包含选择器视图对象和选择器视图的标签,例如

NSLog(@"Rows in component for %@, tag %d",thePickerView,[thePickerView tag]);

titleForRow 中有不同的文本。

您应该看到两个不同的对象 - 如果没有,您的委托和数据源未连接。您应该看到标签 1 和 2 - 如果没有,您的标签设置不正确。

【讨论】:

    【解决方案2】:

    由于这个问题,我的代码没有任何问题,只是我忘记在 XIB 中将标签的值设置为 1 和 2。

    【讨论】:

    • 那么,我回答的第一句话呢?谢谢你。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-02
    • 2019-12-19
    • 2020-08-07
    相关资源
    最近更新 更多