2014-09-03 29 views
0

我的iOS 7.1應用程序有一個奇怪的Bug。請參閱下圖。當我嘗試在UITableView:didSelectRowAtIndexPath事件上推送Alarm-ViewController時發生這種情況。任何想法如何解決這個問題?推送到UINavigationController時遇到UIViewControllers問題 - iOS 7.1

enter image description here

代碼:

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ 

    Alarm *alarm = _settings.sharedSettings[indexPath.row]; 

    AlarmViewController *alarmViewController = [[AlarmViewController alloc] initWithAlarm:alarm]; 
    alarmViewController.title = NSLocalizedString(@"TITLE", nil); 

    [self.navigationController pushViewController:alarmViewController animated:YES]; 
} 
+1

你正在用UIPickerView推視圖控制器,它顯示透明?是嗎?也許你可以更好地解釋問題。 – 2014-09-04 11:38:47

+0

是的,沒有。好吧,讓我試着更好地解釋。我有一個TableViewController從那裏我嘗試推到其他ViewController(AlarmViewController)。 AlarmViewController在編輯模式下被拆分(Top:DatePicker,Bottom:SettingsTableView),類似於標準iOS7 AlarmClock-App。好的,現在AlarmViewController會推動,但在推動時(從TableViewController到AlarmViewController)在動畫持續時間內與AlarmViewController疊加在TableViewController上。重疊只出現在AlarmViewController的頂部,但在兩個方向。它更清晰?謝謝 – blub 2014-09-04 12:13:36

+0

@TiagoLira:好的,我可以解決我的問題。你給出正確的提示。你是對的,我只需要在AlarmViewController的視圖中設置background-color = white,並且不再有透明度和重疊。謝謝! – blub 2014-09-04 12:28:28

回答

1

簡單解決方案。 只需設置UIView的背景色。

UIView *view = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 150)]; 
view.backgroundColor = [UIColor whiteColor]; 

//add other Controls to view 

self.view = view;