Javascript 如何用angular2和typescript隐藏android操作栏?
我有一个简单的html文件:Javascript 如何用angular2和typescript隐藏android操作栏?,javascript,android,typescript,nativescript,Javascript,Android,Typescript,Nativescript,我有一个简单的html文件: <StackLayout orientation="vertical" actionBarHidden="true"> <Image src="res://buy" stretch="none" horizontalAlignment="center"></Image> </StackLayout> 但当我使用: <Page actionBarHidden="true"> <St
<StackLayout orientation="vertical" actionBarHidden="true">
<Image src="res://buy" stretch="none" horizontalAlignment="center"></Image>
</StackLayout>
但当我使用:
<Page actionBarHidden="true">
<StackLayout orientation="vertical">
<Image src="res://buy" stretch="none" horizontalAlignment="center"></Image>
</StackLayout>
</Page>
它打破了这一页。。
动作栏并没有隐藏,内容和动作栏之间有很大的距离
我的应用程序使用angular2和typescript
我犯了什么错
非常感谢任何帮助 属性
actionBarHidden
仅适用于
组件。不要认为你可以把它应用到
上。您也不必在
上指定orientation=“vertical”
,默认情况下它是垂直的。除非这里没有提到您正在尝试实现的特定用例:)
另一个提示-您可以自行关闭
而无需
标记。您可以在组件JS中以页面属性为目标,如下所示:
export class HomePage implements OnInit {
page: Page;
ngOnInit() {
this.page = <Page>topmost().currentPage;
this.page.actionBarHidden = true;
}
}
导出类主页实现OnInit{
第页:第页;
恩戈尼尼特(){
this.page=topmost().currentPage;
this.page.actionBarHidden=true;
}
}
您需要从“ui/frame”导入import{top}
和从“ui/Page”导入{Page}代码>
这样,您就不需要标记(在Angular 2组件中是隐式的)
我希望这有帮助
另外,只要跟进Brad关于自动关闭标记的评论,你会发现使用角度明确的关闭标记(正如你所做的)效果更好。有一个更简单的解决方案。在Angular4.1.0
和NativeScript3.0.0
import { Page } from "ui/page";
export class AppComponent {
constructor(private page: Page) {
page.actionBarHidden = true;
}
}
您可以从组件的构造函数控制动作栏的可见性
StackOverflow回答:试试这个
import { Page } from "tns-core-modules/ui/page";
export class YourComponent implements OnInit {
public constructor(private router: RouterExtensions, private page: Page) {
}
public ngOnInit() {
this.page.actionBarHidden = true;
}
}
非常感谢。你能告诉我在哪里可以隐藏操作栏吗?你已经在一个代码片段的
组件中找到了它。这是该属性唯一起作用的地方,它在我第一次评论的文档页面中。因此,您不能在
上使用它。好的,谢谢,但我从这里复制了它:您所拥有的不是一个精确的副本,但这是隐藏ActionBar的正确方法。如果您需要进一步的澄清,请让我知道。谢谢,但是现在我得到的错误属性页在类型主页(我的类)上不存在。谢谢,您能解释我什么页面:页是什么吗?第二,我得到的错误是找不到最上面的,但我将尝试使用除最上面的以外的其他内容。:)@olivier啊,对不起-您需要从“ui/Page”导入{Page}代码>位于组件顶部,并从“ui/frame”导入{topmost}代码>是的,这是有效的,但是我不明白为什么我们需要导入另一个组件来隐藏某些东西。。。