2016-03-31 4 views
1

Ich verwende ein ion-slide-box, um einige Bilder anzuzeigen. Alles funktioniert gut, wenn ich die Ausrichtung des Geräts nicht ändere. Wenn ich das tue, verschwinden die Bilder manchmal. Durch erneutes Ändern der Ausrichtung werden sie erneut angezeigt.Objektträger verschwinden beim Ändern der Ausrichtung des Geräts

HTML:

<div class="outer" ng-if="!data.navbarHidden"> 
    <div class="middle"> 
     <div class="inner"> 
     <ion-slide-box show-pager="false" on-slide-changed="pageChanged($index)" active-slide="data.currentPageIndex" style="width: {{data.maxWidth}}px; height: {{data.maxHeight}}px;"> 
      <ion-slide ng-repeat="page in allPages"> 
      <img on-double-tap="onDoubleTap()" class="slideImage" ng-src="{{dataPath}}{{page.link}}" alt="{{page.title}}" on-swipe-left="onSwipeLeft()" on-swipe-right="onSwipeRight()"/> 
      </ion-slide> 
     </ion-slide-box> 
     </div> 
    </div> 
    </div> 

CSS:

outer { 
    display: table; 
    position: absolute; 
    height: 100%; 
    width: 100%; 
} 

.middle { 
    display: table-cell; 
    vertical-align: middle; 
} 

.inner { 
    margin-left: auto; 
    margin-right: auto; 
} 

.slideImage{ 
    position: absolute; 
    margin: auto; 
    top: 0; 
    left: 0; 
    right: 0; 
    bottom: 0; 
    width:auto; 
    max-width:100%; 
    max-height:100%; 
    height:auto; 
    -webkit-backface-visibility:hidden; 
} 

Jede Idee, warum dies der Fall ist oder/und wie kann ich dieses Problem beheben?

Antwort

2

So habe ich eine davon in meinem mobilen Anwendung verwendet und hier ist das, was ich antworten kann:

  1. Der Schieber an Seite alle Folien Seite baut, wenn Ihre Anwendung ausgeführt wird.
  2. Jede Folie hat ihre eigenen Eigenschaften, um sie rechts und links von ihren Geschwisterfolien zu halten. (Schauen Sie sich das Bild an)

enter image description here

Wie Sie jede Folie sehen kann, hat eine Reihe Breite, linke Position, Übersetzung etc.

  1. Sie Wann Ändern der Geräteausrichtung Die für die einzelnen Folien eingestellten Werte sind immer noch relativ zur ursprünglichen Ausrichtung.

Also, was Sie können entweder gesetzt wird tun <preference name="orientation" value="portrait" /> in Ihrer config.xml-Datei geschieht das Querformat zu verhindern, oder Sie können versuchen, die Gleitkastens Nachladen, wenn die Ausrichtung als $ionicSlideBoxDelegate.update();

+0

Vielen Dank für Ihre Antwort geändert mit , der Blindenprophet! Die Landschaftsorientierung zu verhindern könnte für jemanden eine Option sein, aber leider nicht für mich. Der Landschaftsmodus ist wichtig. Jetzt verwende ich '$ ionicSlideBoxDelegate.update();' und das Verschwinden ist nicht wieder aufgetreten. Und der Benutzer bemerkt nicht, dass die Bilder aktualisiert wurden. –

+1

Schön! Ich habe das zu meiner Antwort hinzugefügt, damit jeder andere es sehen kann. – theblindprophet