我需要在不同的页面/视图中显示和隐藏后退按钮。我从贾斯汀·诺埃尔那里得到了参考:
<body ng-app="starter" ng-controller="AppCtrl">
<ion-nav-bar class="bar-stable">
<ion-nav-back-button hide-back-button="{{hideBackButton}}">
</ion-nav-back-button>
</ion-nav-bar>
</body>
App控制器切换按钮显示:
.controller('AppCtrl', function($scope, $location) {
var path = $location.path();
if (path.indexOf('submit') != -1)
$scope.hideBackButton = true;
else
$scope.hideBackButton = false;
})
但这是行不通的,因为控制器仅被调用一次,而在不同状态下的视图改变时则不会。同样,从其他控制器(链接到不同的状态)更改$
scope.hideBackButton的值对按钮显示没有任何影响。
谁能告诉我如何在每个导航上切换后退按钮显示。我在这里想念什么?
我今天有完全一样的问题。
最简单的解决方案是使用$ ionicNavBarDelegate:
.controller('AppCtrl', function($scope, $location, $ionicNavBarDelegate) {
var path = $location.path();
if (path.indexOf('submit') != -1)
$ionicNavBarDelegate.showBackButton(false);
else
$ionicNavBarDelegate.showBackButton(true);
})
您还可以将hideBackButton值包装在object中,代码将起作用:
.controller('AppCtrl', function($scope, $location) {
var path = $location.path();
$scope.options = $scope.options || {};
if (path.indexOf('submit') != -1)
$scope.options.hideBackButton = true;
else
$scope.options.hideBackButton = false;
})
之所以起作用,是因为在JS(与许多其他语言一样)中,布尔值是通过值传递的,而对象是通过引用传递的,并且会影响默认Angular观察者的创建方式。该方法的缺点是按钮的隐藏不如其他离子溶液平滑。
以防万一,这是您的html外观:
第一种解决方案:
<body ng-app="starter" ng-controller="AppCtrl">
<ion-nav-bar class="bar-stable">
<ion-nav-back-button>
</ion-nav-back-button>
</ion-nav-bar>
</body>
第二解决方案:
<body ng-app="starter" ng-controller="AppCtrl">
<ion-nav-bar class="bar-stable">
<ion-nav-back-button hide-back-button="{{options.hideBackButton}}">
</ion-nav-back-button>
</ion-nav-bar>
</body>
问题内容: 现在我有两个视图控制器。我的问题是,更改为第二个视图控制器后,我不知道如何隐藏后退按钮。主要是我在Objective-C中找到的参考。如何快速编码? 在Objective-C中隐藏后退按钮代码 问题答案: 根据该文件为:
我希望在Android用户的应用程序中隐藏所有后退按钮,这样他们就必须使用设备的后退按钮。但是对于iOS用户,我希望的后退按钮能够出现,因为这是导航的标准方式。 我知道,但它在iOS和Android设备上都隐藏了后退按钮。
我正在使用: https://github.com/iPaulPro/SlidingMenu 在我的例子中,BehindContentView是一个ListFragment。 1.单击图像以获取behindView(调用toggle();)。 2. onListItem点击会Activity_2显示点击项目的文本。 3.在这个Activity_2中,当我单击device back按钮时,我会看到主
问题内容: 我正在尝试在Cordova应用程序上禁用后退按钮。我正在使用AngularJS + Ionic Framework。我找到了有关此主题,并尝试了下面的代码,但它绝对没有效果。任何想法? index.html 请注意,当我按下后退按钮时,控制台中会显示“ hello”。 问题答案: 终于找到了这个 Ionic论坛主题的答案: 允许完全覆盖后退按钮行为。第一个参数是回调函数,第二个参数是优
我正在尝试隐藏按钮div和显示一个隐藏的div后,一个表单按钮已经被点击,加上延迟提交/重定向。下面是我想出的办法,但似乎没有100%奏效。 null null 任何建议都非常感谢