我正在使用WinJS和Visual Studio中的导航模板编写WP8.1应用程序。我的应用程序中有一个appbar,当我导航到不同的页面时,我使用hideCommands / showCommands来自定义appbar,其中包含适合页面的命令。问题是在显示要显示的命令之前,要隐藏的命令不会完全隐藏。这会创建要隐藏的按钮的瞬间闪烁。
var commands = [appbar.winControl.getCommandById("commandA"), appbar.winControl.getCommandById("commandB"), appbar.winControl.getCommandById("commandC")];
appbar.winControl.hideCommands(commands);
appbar.winControl.showCommands("commandD");
任何帮助将不胜感激。
答案 0 :(得分:0)
同样的事发生在我身上。我曾经认为只有一个AppBar比为每个页面创建一个更好,所以我采用了与showOnlyCommands相同的方法。这在Windows 8(& 8.1)上运行良好,但在WinPhone 8.1中肯定无法正常工作
所以我最终要做的就是在每个需要AppBar的页面中都有我的AppBar标记。
<div data-win-control="WinJS.UI.AppBar"></div>
我确实有一些代码可以使用showOnlyCommands
方法从AppBars显示/隐藏命令,从那时起就没有问题。
一条建议提示:showOnlyCommands
可以接收逗号ID(作为字符串)或AppBarCommands
本身的数组。我发现后者按预期工作了。有一些ID问题