Впервые работая с CorePlot (после пары часов, пытаясь настроить его: P)
, на мой взгляд, у меня есть таблица.когда вызывается определенный IBAction, я хочу показать другое представление (график) вместо табличного.
Мой подход заключался в добавлении подпредставления с таким же размером к табличному виду.он прекрасно работает для отображения графика, но когда я удаляю представление графиков из [подпредставлений таблицы], представление таблицы не появляется снова.
note:
expenseTable: my tableView
hasSubView: (BOOL) that indicates if a graph is shown right now or not
code
-(IBAction)displayDayBalanceGraph:(id)sender{
if (hasSubView) {
[[expenseTable subviews] makeObjectsPerformSelector: @selector(removeFromSuperview)];
NSLog(@"%@",expenseTable.subviews);
}
else{
[self initializeMonthArray];
CPTGraphHostingView *host = [self buildGraphView];
[expenseTable addSubview:host];
CPTXYGraph *graph = [[CPTXYGraph alloc ]initWithFrame:host.frame];
host.hostedGraph = graph;
CPTScatterPlot *plot = [[CPTScatterPlot alloc]init ];
plot.dataSource = self;
[graph addPlot:plot];
[expenseTable reloadData];
hasSubView = !hasSubView;
}
}
-(CPTGraphHostingView *)buildGraphView{
CPTGraphHostingView *view = [[CPTGraphHostingView alloc]initWithFrame:CGRectMake(0, 0, 312, 260)];
[view setBackgroundColor:[self grayColor]];
return view;
}
1-й снимок экрана: Отображение TableView
2-й снимок экрана: Отображение GraphView sidenote: это образец графика =)
3-й снимок экрана: GraphView отклонен
Кто-нибудь есть идея, что я пропустил?(или запутался;))