2017-04-05 3 views
0

Ich verwende Ionic2.Ionic 2 Ionensuchleiste showCancelButton funktioniert nicht in Android

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.3.0 
Ionic CLI Version: 2.1.18 
Ionic App Lib Version: 2.1.9 
Ionic App Scripts Version: 1.1.4 
ios-deploy version: Not installed 
ios-sim version: Not installed 
OS: macOS Sierra 
Node Version: v6.9.4 
Xcode version: Xcode 8.3 Build version 8E162 

kann ich nicht die ion-searchbar erhalten die Abbrechen mit showCancelButton Taste auf der Android-Plattform anzuzeigen.

<ion-searchbar [showCancelButton]="true" class="ion-searchtext" id="ion-searchtext" [(ngModel)]="searchQueryText" (change)="onChangeText($event)" (ionClear)="onCancelText($event)" (ionInput)="onInputText($event)" placeholder="Keyword Search" debounce="1"></ion-searchbar> 

iOS

enter image description here

Android

enter image description here

Das gleiche Problem wird here berichtet, aber es scheint noch nicht geklärt werden, und fragte mich, ob jemand eine Arbeit hat?

Dank

+0

können Sie mit der Eingabe in android-Version starten. es sollte dann zeigen .. Überprüfen Sie die Demo in der Dokumentation .. http://ionicframework.com/docs/api/components/searchbar/Searchbar/ –

+0

Ist das, was Sie meinen: $ Android-Version Der Android-Befehl ist nicht mehr verfügbar . – Richard

+0

Nein .. in der Android-Suchleiste beginnen zu tippen ... es zeigt das 'X'-Symbol –

Antwort

4

Die Schaltfläche Abbrechen ist die Zurück-Pfeil-Symbol auf der linken Seite des Eingabefeldes, es ziemlich verwirrend ist und hat mich anfangs auch, hier ist Demo habe ich erstellt, wo man sehen kann, es funktioniert:

<ion-toolbar> 
    <ion-searchbar 
     [(ngModel)]="searchString" 
     [showCancelButton]="showSearchCancelButton" 
     (ionInput)="searchStuff(searchString)" 
     (ionCancel)="onCancelSearch()"> 
    </ion-searchbar> 
    </ion-toolbar> 

Komponente:

... 
    onCancelSearch(): void { 
    alert('cancel clicked'); 
    } 
    ... 

DEMO

1

Es gibt keine "CancelButton" auf Android.

Sie können es selbst überprüfen auf: searchbar.ts auf dem offiziellen Repository.

/** 
    * @hidden 
    * Show the iOS Cancel button on focus, hide it offscreen otherwise 
    */ 
    positionCancelButton() { 
    if (!this._cancelButton || !this._cancelButton.nativeElement) { 
     return; 
    } 
    let showShowCancel = this._sbHasFocus; 
    if (showShowCancel !== this._isCancelVisible) { 
     let cancelStyleEle = this._cancelButton.nativeElement; 
     let cancelStyle = cancelStyleEle.style; 
     this._isCancelVisible = showShowCancel; 
     if (showShowCancel) { 
     cancelStyle.marginRight = '0'; 
     } else { 
     let offset = cancelStyleEle.offsetWidth; 
     if (offset > 0) { 
      cancelStyle.marginRight = -offset + 'px'; 
     } 
     } 
    } 
    } 

Android und IOS sind nicht ähnlich.

+0

As @ Und3rTow sagte, die Abbrechen-Taste ist der Zurück-Pfeil auf der linken Seite auf Android. –

Verwandte Themen