我有一个前视图控制器和一个滑动侧视图..在按下导航栏后退按钮时,我一直在弹出viewcontroller,到前一个视图控制器。我希望我的侧视图滑出,如果按下后退按钮时它打开了。
我的代码是 我有一个带后退按钮的导航栏:
[navbar.backViewButton addTarget:self action:@selector(backBtnClicked) forControlEvents:UIControlEventTouchUpInside];
按下后退按钮:
-(void)backBtnClicked{
[self.navigationController popViewControllerAnimated:YES];
}
我知道我可以将revealtoggle添加为:
-(void)backBtnClicked{
[self.revealViewController revealToggleAnimated:YES];
[self.navigationController popViewControllerAnimated:YES];
}
但是这给我一个问题,如果侧面视图先前被关闭,它会打开并打开它,这是我不想按下后退按钮的东西。
我想要像
这样的东西-(void)backBtnClicked{
if([self.revealViewController isSideViewAppeared or isSideviewShowing]){
[self.revealViewController revealToggleAnimated:YES];
}
[self.navigationController popViewControllerAnimated:YES];
}
需要帮助..提前致谢
答案 0 :(得分:1)
我找到了答案,我只是试图将旁视图显示并消失为:
[self.revealViewController revealToggleAnimated:YES];
正在打开和关闭左视图..简单的解决方案是
-(void)backBtnClicked{
[self.revealViewController rightRevealToggleAnimated:YES];
[self.navigationController popViewControllerAnimated:YES];
}
答案 1 :(得分:0)
创建一个bool属性,用于存储它是打开还是关闭。在viewWillAppear中根据所述属性打开或关闭它。
答案 2 :(得分:0)
您必须使用render: function (data, type, row) {
switch (type) {
case 'display' :
return addEllipsis(data, 6); break;
default :
return data; break;
}
}
导航方法进行弹出和推送。
将此代码写入后退按钮操作方法。
SWRevealViewController
可能会帮助你。
答案 3 :(得分:0)
要在使用SWRevealViewController时手动关闭幻灯片菜单,请试试:self.revealViewController().revealToggle(animated: true)
答案 4 :(得分:0)
Use this code at button action.
if (self.revealViewController.frontViewPosition == 4){
[self.revealViewController revealToggleAnimated:YES];
}