Nativescript - 搜索栏在操作栏中显示不正确 (IOS)
Nativescript - Search Bar does not display correctly within action bar (IOS)
正在创建 nativescript angular 应用程序。在为我的应用程序创建搜索栏时注意到一些非常奇怪的行为。虽然搜索栏在 Android 中的操作栏中完美显示,但在 IOS 中搜索栏最初根本不显示。但是,如果我缓慢地反复更改设备方向,每次更改设备方向时,搜索栏都会慢慢开始显示在操作栏中,并且宽度会逐渐增加!!
我的代码如下
app.component.html
<StackLayout sdkToggleNavButton>
<ActionBar title="" backgroundColor="#f82462">
<StackLayout>
<app-search-bar></app-search-bar>
</StackLayout>
</ActionBar>
在 app.component 中,我将搜索栏称为单独的组件。
searchbarComponent.ts
import { Component } from "@angular/core";
import searchBarModule = require("ui/search-bar");
@Component({
selector: "app-search-bar",
template: `
<SearchBar class ="sb" #sb hint="Enter topic to get questions" [text]="searchPhrase" (submit)="onSubmit(sb.text)"></SearchBar> `
})
export class SearchBarComponent { }
使用 Nativescript 2.5
关于这里发生的事情的任何建议。
我在我的 Nativescript 项目中使用搜索组件,它运行良好。你可以参考我的代码。
search.component.html
<ActionBar title="Search">
<NavigationButton android.systemIcon="ic_menu_back" text=" " pageTransition="fade"></NavigationButton>
</ActionBar>
<StackLayout toggleNavButton>
<StackLayout>
<!-- >> basic-search-bar-html -->
<SearchBar #sb hint="SEARCH FOR INSPIRATION" [(ngModel)]="category" [text]="searchPhrase" (submit)="onSearchTap()"></SearchBar>
<!-- << basic-search-bar-html -->
</StackLayout>
<!-- >> Search result listing here -->
<GridLayout rows="auto, *">
<ListView [items]="category" row="1">
search.componet.ts
import { Component } from "@angular/core";
import { Observable } from 'rxjs/Observable';
import { searchService } from '../../shared/search/search.service';
@Component({
selector: 'search',
templateUrl: "pages/search/search.component.html",
styleUrls: ["pages/search/search.component.css"],
providers: [searchService]
})
export class SearchBarComponent {
提到了这个问题和解决方法 here。在父级 StackLayout 中设置拉伸属性对我有用。
正在创建 nativescript angular 应用程序。在为我的应用程序创建搜索栏时注意到一些非常奇怪的行为。虽然搜索栏在 Android 中的操作栏中完美显示,但在 IOS 中搜索栏最初根本不显示。但是,如果我缓慢地反复更改设备方向,每次更改设备方向时,搜索栏都会慢慢开始显示在操作栏中,并且宽度会逐渐增加!!
我的代码如下
app.component.html
<StackLayout sdkToggleNavButton>
<ActionBar title="" backgroundColor="#f82462">
<StackLayout>
<app-search-bar></app-search-bar>
</StackLayout>
</ActionBar>
在 app.component 中,我将搜索栏称为单独的组件。
searchbarComponent.ts
import { Component } from "@angular/core";
import searchBarModule = require("ui/search-bar");
@Component({
selector: "app-search-bar",
template: `
<SearchBar class ="sb" #sb hint="Enter topic to get questions" [text]="searchPhrase" (submit)="onSubmit(sb.text)"></SearchBar> `
})
export class SearchBarComponent { }
使用 Nativescript 2.5
关于这里发生的事情的任何建议。
我在我的 Nativescript 项目中使用搜索组件,它运行良好。你可以参考我的代码。
search.component.html
<ActionBar title="Search">
<NavigationButton android.systemIcon="ic_menu_back" text=" " pageTransition="fade"></NavigationButton>
</ActionBar>
<StackLayout toggleNavButton>
<StackLayout>
<!-- >> basic-search-bar-html -->
<SearchBar #sb hint="SEARCH FOR INSPIRATION" [(ngModel)]="category" [text]="searchPhrase" (submit)="onSearchTap()"></SearchBar>
<!-- << basic-search-bar-html -->
</StackLayout>
<!-- >> Search result listing here -->
<GridLayout rows="auto, *">
<ListView [items]="category" row="1">
search.componet.ts
import { Component } from "@angular/core";
import { Observable } from 'rxjs/Observable';
import { searchService } from '../../shared/search/search.service';
@Component({
selector: 'search',
templateUrl: "pages/search/search.component.html",
styleUrls: ["pages/search/search.component.css"],
providers: [searchService]
})
export class SearchBarComponent {
提到了这个问题和解决方法 here。在父级 StackLayout 中设置拉伸属性对我有用。