UIPageviewcontroller 的导航栏上有书签按钮。
在翻页时在uipageviewcontroller中为currentIndex添加书签之后,为什么选择的书签状态显示为所有页面,因为它应该只显示已添加书签的currentIndex而不是所有页面。对于所有页面,它应该显示未标记状态。
就像当我为当前索引书签按钮添加书签时,然后显示该 currentIndex 的蓝色书签状态,但是当我翻页时,它显示下一页的蓝色书签按钮,当下一页没有添加书签时。它应该为下一页显示未添加书签的状态,因为它没有添加书签。
这是我的代码:
- (IBAction)bookmarkAction:(id)sender {
if ( _bookmarkbtn.tag) {
[_bookmarkbtn setImage:[UIImage imageNamed:@"Bookmark-N.png"] forState:UIControlStateNormal];
_bookmarkbtn.tag = 0;
[self setBookmarkState:NO];
} else {
[_bookmarkbtn setImage:[UIImage imageNamed:@"Bookmark-Y.png"] forState:UIControlStateNormal];
_bookmarkbtn.tag = 1;
[self setBookmarkState:YES];
}
_bookmarkbtn.tag = _BookmarkState;
[self bookmarkcurrentIndex];
}
- (void)bookmarkcurrentIndex {
currentIndex = [modelArray indexOfObject:contentViewController.page];
// if ([contentViewController.bookmarks containsIndex:currentIndex]) {
if (BookmarkState == YES) {
[contentViewController.bookmarks addIndex:currentIndex];
}else {
[contentViewController.bookmarks removeIndex:currentIndex];
}
BookmarkState = ! BookmarkState;
}
我的代码中是否缺少该逻辑。
任何方向将不胜感激。
谢谢