Results 1 to 2 of 2

Thread: peMode - Problem

  1. #1
    Join Date
    Aug 2019
    Location
    Aue
    Posts
    11

    Default peMode - Problem

    Ich habe in der Webapp.src folgende Ausgabe in der OnOrientationChange und OnLoad...

    Code:
        Procedure OnOrientationChange Integer iOrientation
            Forward Send OnOrientationChange iOrientation
    
            Integer eMode
            
            WebGet peMode of ghoWebApp to eMode
            
            If (eMode = rmDesktop) Send ShowInfoBox "Desktop" ""
            If (eMode = rmMobileLandscape) Send ShowInfoBox "Quer" "Handy"
            If (eMode = rmMobilePortrait) Send ShowInfoBox "Hoch" "Handy"
            If (eMode = rmTabletLandscape) Send ShowInfoBox "Quer" "Tablet"
            If (eMode = rmTabletPortrait) Send ShowInfoBox "Hoch" "Tablet"
            
            If ((eMode = rmDesktop) or (eMode = rmMobileLandscape) or (eMode = rmMobileLandscape)) Begin
                Send OnShow of oMeineView
            End
            else Begin
                Send OnShow of oMeineView
            End
        End_Procedure   //OnOrientationChange
    
        Procedure OnLoad
            Integer eMode
            
            WebGet peMode of ghoWebApp to eMode
            
            If (eMode = rmDesktop) Send ShowInfoBox "Desktop" ""
            If (eMode = rmMobileLandscape) Send ShowInfoBox "Quer" "Handy"
            If (eMode = rmMobilePortrait) Send ShowInfoBox "Hoch" "Handy"
            If (eMode = rmTabletLandscape) Send ShowInfoBox "Quer" "Tablet"
            If (eMode = rmTabletPortrait) Send ShowInfoBox "Hoch" "Tablet"
    
    
    
            Forward Send OnLoad
        End_Procedure   //OnLoad
    ... und die selben Zeilen in der OnShow meiner View

    Code:
    //oMeineView is a....
    //   Set pbServerOnShow to True
    //   ...
    
    
        Procedure OnShow
            Integer eMode            //Modus, was für ein Gerätetyp
    
            //Gerätetyp und Ausrichtung holen
            WebGet peMode of ghoWebApp to eMode
            
            If (eMode = rmDesktop) Send ShowInfoBox "Desktop" ""
            If (eMode = rmMobileLandscape) Send ShowInfoBox "Quer" "Handy"
            If (eMode = rmMobilePortrait) Send ShowInfoBox "Hoch" "Handy"
            If (eMode = rmTabletLandscape) Send ShowInfoBox "Quer" "Tablet"
            If (eMode = rmTabletPortrait) Send ShowInfoBox "Hoch" "Tablet"
            
            Forward Send OnShow
        End_Procedure   //OnShow
    Nun tritt folgendes Verhalten beim Handy und Tablet auf:

    Aufruf der Webapp im Browser - Handy/Tablet Hochformat --> Infobox: Handy bzw Tablet Hoch --> 1.Aufruf der View --> Infobox: Handy bzw Tablet Hoch //bis hier stimmt alles, aber nun ...
    Ich drehe das Gerät ins Querformat --> Infobox: Handy bzw Tablet Hoch --> Ich drehe das Gerät zurück ins Hochformat --> Infobox: Handy bzw Tablet Quer

    Es ist unerklärlich für mich wieso peMode of ghoWebApp ab diesem Zeitpunkt immer die falsche Ausrichtung zurückgibt.
    Glück Auf!
    Sebastian

    it is better to stagger the right way limping than to step firmly down the wrong path

  2. #2
    Join Date
    Jul 2009
    Location
    Wiesbaden, Germany
    Posts
    245

    Default Re: peMode - Problem

    Ich würde vermuten, dass die Richtungsänderung erst nach dem OnShow der View passiert und somit die alte Ausrichtung bei peMode abgefragt wird.

    In den seltensten fällen muss man auch wirklich die Orientierung mit peMode abfragen, sondern kann dafür WebSetResponsive verwenden.

    Was du dir auch noch ansehen könntest zu dem Thema wäre die OnOrientationChange. In der sollte eigentlich immer die richtige Ausrichtung ermittelbar sein.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •