2012-01-13 1 views
0

Я пытаюсь повторно использовать табличный код popover таким образом, что когда пользователь прикасается к канадской кнопке, отображаются провинции Канады (Альберта, Британская Колумбия, ...); когда пользователь прикасается к кнопке США, отображаются состояния США (Алабама, Аляска, ...). Проблема в том, что когда я нажал кнопку США после кнопки «Канада», первые 12 штатов США не отображаются 13 провинциями Канады, которые все еще отображаются.Popover tableview с данными динамического массива

Я выполняю код здесь

http://www.raywenderlich.com/1056/ipad-for-iphone-developers-101-uipopovercontroller-tutorial

но изменения setColorButtonTapped код взять массив, так что я могу повторно использовать код для различных массивов

- (IBAction)setColorButtonTapped:(id)sender withData:(NSArray *) data { 
    if (_colorPicker == nil) { 
     self.colorPicker = [[[ColorPickerController alloc] 
          initWithStyle:UITableViewStylePlain] autorelease]; 
     _colorPicker.delegate = self; 
     self.colorPickerPopover = [[[UIPopoverController alloc] 
            initWithContentViewController:_colorPicker] autorelease];    
    } 
    [self.colorPickerPopover presentPopoverFromBarButtonItem:sender 
            permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES]; 
_colorPicker.tableList = [data copy]; 
// I defined a property NSMutableArray *tableList 
// I think the problem is with the way I copy the data } 

К сожалению о fomatting из код.

Спасибо за вашу помощь заранее.

Джо

ответ

0

Джо, я предполагаю, что многие скажут вам, чтобы быть немного более конкретными. Тем не менее, одна вещь, которая привлекла мое внимание, заключается в том, что вы, похоже, не пустили свой .tableList в любом месте этого фрагмента кода.

В принципе, попробуйте проверить, есть ли у него данные или нет, прежде чем копировать в него новый. Если это произойдет, удалите старые данные и скопируйте их.

 Смежные вопросы

  • Нет связанных вопросов^_^