• ^^ Hallo, ich habe folgendes Problem mein Hauptprograme
    1: public
    [b]class
    MainActivity extends FragmentActivity { [/b]soll einen Integerwert an
    2: public
    class MyFragment extends Fragment { übergeben. Ich möchte das aus einem Grund machen da ich eine Auswahl von drei Bildern habe dich ich anzeigen möchte je nachdem was ich für einen Wert von einer Abfrage bekomme. Klappt alles perfekt aber sobald ich das Phone drehe springt das Programm zur 1 mein Hauptprogramm und somit ist mein Integer wieder auf 1 Gesetzt.



    Das ist mein Aufruf vom Hauptprogramm:



    ViewPager pager = (ViewPager) findViewById(R.id.pager);



    FragmentManager fm = getSupportFragmentManager();


    MyFragmentPagerAdapter pagerAdapter = new MyFragmentPagerAdapter(fm);



    Pager.setAdapter(pagerAdapter);


    Kann mir jemand da weiterhelfen, bin leider kein Profi.




    Gruss Franz

  • Müsste alles mit savedInstanceState klappen.
    Siehe dazu den Beispielcode:http://stackoverflow.com/quest…activity-state-in-android
    Bitte benutze demnächst auch Code-Tags für Sourcecode.

    MfG,
    Christopher


    Eine gewisses Maß an Freundlichkeit kann man auch von Menschen im Internet erwarten.
    Das Forum basiert komplett auf der Freiwilligkeit ihrer Nutzer und diese sollen sich wohlfühlen! Daher seid bitte freundlich. Danke

  • Man kann seinem Fragment jederzeit etwas zustellen :) Dazu einfach das Fragment holen und die zuständige Funktion aufrufen Parameter übergeben und gut.


    Bsp:



    Code
    DetailFragment fragment = (DetailFragment) getFragmentManager()
                .findFragmentById(R.id.detailFragment);
            if (fragment != null && fragment.isInLayout()) {
              fragment.setImageNumber(1); 
            }



    Alternativ kann man genauso gut mit Listener arbeiten. Wie man aus ChampS link entnehmen kann (hab nur kurz reingeschaut).

  • Mal sehen ob das jetzt dann da steht wo ich es will, kenne mich leider nicht so gut aus im Forum.


    Also ich habe leider mein Problem falsch erklärt, da ich erst nachdem ich log Informationen ausgegeben habe verstanden was da bei mir passiert. Mein Problem liegt jetzt darin, dass wenn ich das Phone drehe mein Programm von vorne beginnt und da wird mein index gesetzt. Das heißt jedes mal beim drehen startet es von neu und setzt den index auch neu. Den index benütze ich, damit ich weiß welches Bild ich anzeigen möchte das sich aus einer Eingabe ergibt.


    Das einzige was ich weiß, den index in eine Datei schreiben und auslesen und benützen, aber ich denke das ist keine saubere Art es muss doch anders gehen. Freue mich schon auf eine Antwort.



    Ach ja wie geht das mit dem Source hier im Forum, dass er in einem Kasten dargestellt wird, sorry wenn ich so dumm Frage. :-X



    Gruss Franz ;(

  • Ein paar Tipps zum Thema gibt es hier:
    http://stackoverflow.com/quest…start-on-rotation-android


    Schau einmal nach, welche Informationen im übergebenen Bundle "savedInstance" liegen, eventuell hilft Dir das weiter.


    Die Einrückungen schaffst Du mit den so genannten Code-Blöcken.

    Code
    [code]Einfach ein Code()
    // Mit Kommentar.[/ code]
    [code=php]phpCode() {
      $mitVariable = 12;
      // und Kommentar;
    }


    Java
    public static int main(String[] args) {
      String type = "Java Code";
      // Ebenfalls mit Kommentar.
    }


    HTML
    <p><span>Dies ist HTML</span></p>
    <!-- Und ein Kommentar. //-->


    SQL
    select u.mail, u.login, l.pass from user u inner join login l using u._id = l.user_id where u.login = frjaeger220


    CSS
    stylesheet {
      color = #ffffff;
      #Kommentar
    }


    XML
    <type name="Codetyp">XML</type>
    <!-- Kommentar. Mal wieder. //-->>


    C
    int main(int argc, char* argv[]) {
      int revision = 1;
      char* type[] = "C/C++";
      // Der letzte Kommentar
    }

    [/code]


    Code
    Einfach ein Code()
    // Mit Kommentar.


    PHP
    phpCode() {
      $mitVariable = 12;
      // und Kommentar;
    }


    Java
    public static int main(String[] args) {
      String type = "Java Code";
      // Ebenfalls mit Kommentar.
    }


    HTML
    <p><span>Dies ist HTML</span></p>
    <!-- Und ein Kommentar. //-->


    SQL
    select u.mail, u.login, l.pass from user u inner join login l using u._id = l.user_id where u.login = frjaeger220


    CSS
    stylesheet {
      color = #ffffff;
      #Kommentar
    }


    XML
    <type name="Codetyp">XML</type>
    <!-- Kommentar. Mal wieder. //-->>


    C
    int main(int argc, char* argv[]) {
      int revision = 1;
      char* type[] = "C/C++";
      // Der letzte Kommentar
    }

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!