1. Nimm jetzt an unserem 2. ADVENT-Gewinnspiel teil - Alle Informationen findest Du hier!

Problem setText o0

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von java4life, 02.02.2011.

  1. java4life, 02.02.2011 #1
    java4life

    java4life Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    23.01.2011
    Hi,
    ich habe ein Problem mit dem setText einer TextView. Wahrscheinlich sehe ich den Wald vor lauter Bäumen nicht...

    Activity
    Code:
    public void onCreate(Bundle icicle) {
            super.onCreate(icicle);
    
            //hier stürzt er ab
            selection=(TextView)findViewById(R.id.TextView02neu);
            selection.setText("yxvyx");
            //auskommentiert klappt alles
    
            setContentView(R.layout.main2);
            city = getResources().getStringArray(R.array.city_array);
            
            setListAdapter(new ArrayAdapter(this, R.layout.abso,   R.id.label,city));
            
        }
    
    hier die xml ressource:
    Code:
    <TextView 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_x="21dip" 
    android:layout_y="36dip" 
    android:id="@+id/TextView02neu">
    </TextView>
    
    ich will lediglich den text in der textview ändern. (wollte da später ein datum einfügen).
    allerdings kann ich nicht mal einen text mit setText setzen,da sonst der fehler kommt "der prozess wurde unerwartet beendet".
    wenn ich den text in der xml definiere,nimmt er den an, aber mit setText im source ist nichts zu machen =(
     
    Zuletzt bearbeitet: 02.02.2011
  2. swordi, 02.02.2011 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    setcontentview vergessen

    edit: setcontentview muss weiter oben kommen - woher soll er sonst die komponten nehmen
     
  3. java4life, 02.02.2011 #3
    java4life

    java4life Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    23.01.2011
    Code:
    super.onCreate(icicle);
            setContentView(R.layout.main2);
    
            selection=(TextView)findViewById(R.id.TextView02neu);
            selection.setText("yxvyx");
    ...
    
    klappt auch nicht =(
     
  4. swordi, 02.02.2011 #4
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    war aber zumindets mal ganz sicher ein schlimmer fehler das setcontentview so weit unten zu machen.


    was sagt der logcat jetzt? da steht sicher drin was der fehler ist.
     
    java4life bedankt sich.
  5. Peter123, 02.02.2011 #5
    Peter123

    Peter123 Android-Hilfe.de Mitglied

    Beiträge:
    103
    Erhaltene Danke:
    7
    Registriert seit:
    13.11.2010
    Hast du denn bei

    selection=(TextView)findViewById(R.id.TextView02neu);
    selection.setText("yxvyx");

    das "selection" schon vorher irgendwo definiert?
     
  6. swordi, 02.02.2011 #6
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    wenn nicht würds ja gar nicht ausführbar sein
     
  7. java4life, 03.02.2011 #7
    java4life

    java4life Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    23.01.2011
    ein so schlimmer fehler war es gar nicht *glaube ich*. weil es ja trotzdem ging. habe ja nichts weiter gemacht,als variablen zu definieren,die danach geladen werden.

    ich finde es nur komisch,dass es bei meiner anderen anwendung problemlos (mit der selben vorgehensweise geklappt hat und hier nicht).die console und compiler geben keine fehlermeldung. lediglich beim starten der app wird gesagt, dass die app nicht gestartet werden kann und sie beendet werden muss...

    ich bin echt verwirrt -.- und sauer xD
    aber danke für die hilfe...wenn ihr noch ideen habt,immer her damit

    PS: ja,ich habe selection mit "TextView selection;" vorher bekannt gemacht...

    und wie gesagt, wenn ich:
    Code:
    selection=(TextView)findViewById(R.id.TextView02neu);
            selection.setText("yxvyx");
    
    auskommentiere klappts!
     
  8. swordi, 03.02.2011 #8
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    lol

    sicher ist es ein schlimmer fehler, wenn du zuerst versuchst objekte zu holen, die du nicht holen kannst ;)

    und soweit ich weiß funktionierte gar nichts bei dir, sonst hätten wir hier keinen langen thread ;)
    hehe
     
    the_alien bedankt sich.
  9. the_alien, 03.02.2011 #9
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    Wenn man schon java4life heißt sollte man Exceptions und Stacktraces kennen und diese bei einem Fehler auch gleich mal mit posten...
     
    java4life bedankt sich.
  10. java4life, 03.02.2011 #10
    java4life

    java4life Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    23.01.2011
    hoffe ihr bekommt keinen augenkrebs xD

    [​IMG]
    an die stelle wo label2 steht soll jetzt was mit setText gesetzt werden...TextView heißt in der xml:
    ...
    "android:id="@+id/TextView02neu"
    ...


    [​IMG]
    sry,dass ich euch auf den keks gehe. aber es ist halt frustrierend,wenn man stundenlang an so einem "kleinen" error sitzt...und der fehler kommt zur laufzeit...bin euch echt dankbar für eure ratschläge!!!

    console:
    Code:
    [2011-02-03 10:43:00 - ListView2] Uploading ListView2.apk onto device 'emulator-5554'
    [2011-02-03 10:43:01 - ListView2] Installing ListView2.apk...
    [2011-02-03 10:43:07 - ListView2] Success!
    [2011-02-03 10:43:08 - ListView2] Starting activity com.list.StaticDemo on device emulator-5554
    [2011-02-03 10:43:11 - ListView2] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.list/.StaticDemo }
    
     
    Zuletzt bearbeitet: 03.02.2011
  11. Zoopa, 03.02.2011 #11
    Zoopa

    Zoopa Android-Experte

    Beiträge:
    599
    Erhaltene Danke:
    173
    Registriert seit:
    28.07.2010
    Also du scheinst Logcat nicht zu kennen: starte mal die App, lass sie abstürzen und schau mal in Eclipse unter
    Window -> Open Perspective -> Other -> DDMS (Tab gegebenenfalls noch auf Logcat wechseln)
    oder
    Window -> Show View -> Other -> Logcat

    Dort sollte es dir dann irgendwo in Rot den Stacktrace und die Exception anzeigen (Rechts von Logcat gibts noch so farbige Buchstaben-Buttons, wenn du auf E stellst, zeigts nur die Fehler an)
     
    java4life bedankt sich.
  12. java4life, 03.02.2011 #12
    java4life

    java4life Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    23.01.2011
    also irgendwie blockieren sich wohl das array + setListAdapter(new ArrayAdapter(this, R.layout.abso, R.id.label,city ));

    bzw. raus kommt eine NullPointer...


    hätte jemand vielleicht eine idee, wie ich 2 arrays gleichzeitig in die liste bekomme?
    möglichst nicht mit hashmap oder ähnlichem,da die beiden arrays unabhängig voneinander sind...
    in etwa so:

    Code:
    ArrayAdapter<String> array1 = new ArrayAdapter<String>(this,R.layout.abso,R.id.label,city);
    ArrayAdapter<String> array2 = new ArrayAdapter<String>(this,R.layout.abso,R.id.label2,city2);
            
    setListAdapter(array1,array2);
    
    leider geht das so nicht bzw. wenn ich das nacheinander mache:
    setListAdapter(array1);
    setListAdapter(array2);
    
    wird das erste vom 2. logischerweise überschrieben...

    dankö!
     
    Zuletzt bearbeitet: 03.02.2011
  13. rushzero, 03.02.2011 #13
    rushzero

    rushzero Erfahrener Benutzer

    Beiträge:
    171
    Erhaltene Danke:
    36
    Registriert seit:
    20.10.2010

    Hab die ganzen Post vorher nicht gelesen, aber die Variable city und city2 sind doch Arrays. Dann leg die doch einfach voher zusammen.

    Code:
    List list = new List();
    for(Object obj : city)
     list.add(obj);
    for(Object obj : city1)
     list.add(obj);
    
    ArrayAdapter<String> array1 = new ArrayAdapter<String>(this,R.layout.abso,R.id.label,list);
    
    
     
  14. java4life, 03.02.2011 #14
    java4life

    java4life Threadstarter Junior Mitglied

    Beiträge:
    38
    Erhaltene Danke:
    1
    Registriert seit:
    23.01.2011
    das problem dabei ist,dass beide arrays an ein label gebunden werden.
    sind aber zwei unterschiedliche labels vorhanden...
     
  15. the_alien, 03.02.2011 #15
    the_alien

    the_alien Android-Lexikon

    Beiträge:
    1,559
    Erhaltene Danke:
    184
    Registriert seit:
    04.05.2009
    WTF?

    Code:
    List<Object> list = new ArrayList<Object>();
    list.addAll(Arrays.asList(city));
    list.addAll(Arrays.asList(city1));
    
     
  16. rushzero, 03.02.2011 #16
    rushzero

    rushzero Erfahrener Benutzer

    Beiträge:
    171
    Erhaltene Danke:
    36
    Registriert seit:
    20.10.2010
    xD man kenn die ganze List Funktionen nicht auswendig zu sehr Eclipse verwöhnt.
     
  17. MichaelS, 03.02.2011 #17
    MichaelS

    MichaelS Fortgeschrittenes Mitglied

    Beiträge:
    370
    Erhaltene Danke:
    51
    Registriert seit:
    14.08.2009
    mann kann sich auch mal den stacktrace in logcat anschauen oO
     

Diese Seite empfehlen