Beiträge von MiDniGG

    rechts klick auf dein projekt -> Android Tools -> export signed bzw. unsigned application package
    apk aufs handy ziehen und installieren


    Falls unsigned sollte auf dem Handy noch aktiviert werden, dass Programme von unbekannter Quelle installiert werden dürfen. Irgendwo in den Einstellungen. Hab grad leider kein Androiden zur Hand... :(

    So. Abgestimmt ist. Dann hier die Erklärung:


    Ich bin (auch) Softwareentwickler in Vollzeit. Beinahe ausschließlich im J2EE-Bereich. Android und vorher J2ME, sowie Desktopentwicklung geschieht nur in der freien Arbeitszeit oder eben der Freizeit.

    Das hatten wir doch schon mal. :)


    Also zuerst solltest Du bei dem String das erste Zeichen wegkürzen:


    Java
    str = str.substring(1, str.length());


    Dann den String splitten:


    Java
    String[] strArr = str.split("@");


    Dann machst Du ein zweites String[] mit nur den Namen drin:


    Java
    String[] nameArr = new String[strArr.length];
    for(int i = 0; i < strArr.length; i++) {
       nameArr[i] = strArr[i].split("|")[1];
    }


    Das Namen-Array packst Du dann in das ListView.


    Java
    liste.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, nameArr));


    So. Und dann holst Du dir bei einem Klick auf ein Element der Liste dessen Position und lädst den Array-Eintrag:


    Java
    liste.setOnItemClickListener(new AdapterView.OnItemClickListener(){
    	@Override
    	public void onItemClick(AdapterView<?> arg0, View view, int position, long arg3) {
    		String entry = strArr[position];
                    Intent intent = new Intent(TestdroidActivity.this, Test2.class);
                    intent.putExtra("eintrag", entry);
    		startActivity(intent);
    	}
    });


    In der anderen Activity kannst Du dann den Eintrag holen mit:


    Java
    String entry = getIntent().getExtras().getString("eintrag");


    und diesen dann wieder an "|" splitten und entsprechend schön darstellen.


    Ich hoffe das ist ausführlich genug! :P

    So. Hab jetzt mal etwas mit Deinem Code rumgespielt. Nachdem ich die zweite Klasse statt von ListActivity normal von Activity habe erben lassen ging es bei mir ohne Probleme. Allerdings ohne Daten aus dem Internet zu ziehen und ohne die ImageViews...


    Kannst das ja mal probieren. Und dann eventuelle Fehler nochmal schreiben.

    Hi,


    in der Fehlermeldung steht ja eindeutig, dass eine Exception nicht gefangen wird. Der Fehler tritt in Zeile 55 der Klasse "fh" auf. (Achte bitte auf die Konventionen. package-Namen immer klein und Klassennamen immer mit führendem Großbuchstaben. Macht es übersichtlicher)


    Der andere Fehler:


    java.lang.RuntimeException: Unable to start activity ComponentInfo{de.FH_APP/de.FH_APP.fh}: java.lang.RuntimeException: Your content must have a ListView whose id attribute is 'android.R.id.list'


    kommt von einem Schreibfehler, der in Deinem Bsp-Code aber nicht vorhanden ist. Die ID in der XML heißt "liste" und Du versuchst/versuchtest die ListView mit der id "list" aufzurufen.


    Mehr fällt mir auf den ersten Blick nicht auf.

    Hey,


    was genau ist denn jetzt die Frage?


    Wie man einen OnClickListener auf ein ListView bekommt?
    Oder wie man mit einem Klick dann weiter verfährt?
    Oder was?


    Also grob würde ich so vorgehen:


    Daten alle in eine HashMap oder ein(e) 2D-Array(List) packen.
    Benötigte Daten in der ListView anzeigen.
    ListView mit einem onClickListener ausstatten.
    In der onClick-Methode kannst Du dann mit ListView#getSelectedItemPosition() die Position des angeklickten Objekts ermitteln. Mit dieser Position kannst Du dann aus der ArrayList den entsprechenden Datensatz laden, an die neue Activity übergeben und dort anzeigen.

    Hey.


    Ich werf Dir einfach mal ein paar Worte zu, wenn Du dann immer noch Fragen hast, stell sie. :D


    String#split(); oder auch String#substring();


    String#equals(); (NICHT ==)


    Wieso soll das Array 2D sein? Was soll Dim1 und was Dim2 sein?