Gelöschter Account
- Forum-Beiträge: 136
22.05.2011, 01:08:23 via Website
22.05.2011 01:08:23 via Website
Hallo zusammen,
das Thema wurde schon oft angesprochen, ich habe auch viele Anleitungen gefunden, nur leider hat nichts wirklich funktioniert. Also folgendes:
Ich parse mit meiner App ein xml File. passt alles super, sieht genauso aus, wie es soll. Nun steht in der XML mit dem attribut "image" der Pfade zum Image. Dieses Image würde ich nun gerne links oder rechts neben der jeweiligen TextView stehen haben. Das hat bei mir aber vorne und hinten nicht funktioniert. Entweder wurde nichts angezeigt oder ich bekam einen NullPointer, den ich auch finden konnte nur nicht beheben.
Unten stehend poste ich euch meinen Code. Könnt ihr mir weiter helfen? Habe keine Ahnung, wie ich das machen soll.
Liebe Grüße,
Malte
das Thema wurde schon oft angesprochen, ich habe auch viele Anleitungen gefunden, nur leider hat nichts wirklich funktioniert. Also folgendes:
Ich parse mit meiner App ein xml File. passt alles super, sieht genauso aus, wie es soll. Nun steht in der XML mit dem attribut "image" der Pfade zum Image. Dieses Image würde ich nun gerne links oder rechts neben der jeweiligen TextView stehen haben. Das hat bei mir aber vorne und hinten nicht funktioniert. Entweder wurde nichts angezeigt oder ich bekam einen NullPointer, den ich auch finden konnte nur nicht beheben.
Unten stehend poste ich euch meinen Code. Könnt ihr mir weiter helfen? Habe keine Ahnung, wie ich das machen soll.
1package com.pxr.tutorial.xmltest;
2
3import java.io.IOException;
4import java.io.InputStream;
5import java.net.MalformedURLException;
6import java.net.URL;
7import java.util.ArrayList;
8import java.util.HashMap;
9
10import org.w3c.dom.Document;
11import org.w3c.dom.Element;
12import org.w3c.dom.NodeList;
13
14import android.app.AlertDialog;
15import android.app.ListActivity;
16import android.content.Context;
17import android.content.DialogInterface;
18import android.content.Intent;
19import android.graphics.drawable.Drawable;
20import android.net.Uri;
21import android.os.Bundle;
22import android.view.Menu;
23import android.view.MenuItem;
24import android.view.View;
25import android.widget.AdapterView;
26import android.widget.AdapterView.OnItemClickListener;
27import android.widget.ImageView;
28import android.widget.ListAdapter;
29import android.widget.ListView;
30import android.widget.SimpleAdapter;
31import android.widget.Toast;
32
33public class Main extends ListActivity {
34
35 static final private int BACK_ID = Menu.FIRST;
36 /** Called when the activity is first created. */
37 @Override
38
39 public void onCreate(Bundle savedInstanceState) {
40 super.onCreate(savedInstanceState);
41 setContentView(R.layout.listplaceholder);
42
43 ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
44
45
46 String xml = XMLfunctions.getXML();
47 Document doc = XMLfunctions.XMLfromString(xml);
48
49 int numResults = XMLfunctions.numResults(doc);
50
51 if((numResults <= 0)){
52 Toast.makeText(Main.this, "Kein Ergebniss!", Toast.LENGTH_LONG).show();
53 finish();
54 }
55
56 NodeList nodes = doc.getElementsByTagName("referenz");
57
58 for (int i = 0; i < nodes.getLength(); i++) {
59 HashMap<String, String> map = new HashMap<String, String>();
60
61 Element e = (Element)nodes.item(i);
62 map.put("projekt", XMLfunctions.getValue(e, "projekt"));
63 map.put("link", XMLfunctions.getValue(e, "link"));
64 map.put("kunde", "Kunde: " + XMLfunctions.getValue(e, "kunde"));
65 map.put("jahr", "Jahr: " + XMLfunctions.getValue(e, "jahr"));
66 map.put("technologie", "Technologie: " + XMLfunctions.getValue(e, "technologie"));
67 map.put("image", XMLfunctions.getValue(e, "image"));
68 mylist.add(map);
69 }
70
71 ListAdapter adapter = new SimpleAdapter(this, mylist , R.layout.main,
72 new String[] { "kunde", "projekt", "image", "technologie", "link", "jahr" },
73 new int[] { R.id.item_title, R.id.item_subtitle, R.id.item_image });
74
75 setListAdapter(adapter);
76
77 final ListView lv = getListView();
78 lv.setTextFilterEnabled(true);
79 lv.setOnItemClickListener(new OnItemClickListener() {
80 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
81 @SuppressWarnings("unchecked")
82 final HashMap<String, String> o = (HashMap<String, String>) lv.getItemAtPosition(position);
83
84
85 String title = o.get("kunde");
86 String message = o.get("projekt")+"\n"+o.get("jahr")+"\n"+o.get("technologie");
87
88 AlertDialog.Builder alt_bld = new AlertDialog.Builder(Main.this);
89 alt_bld.setTitle(title);
90 alt_bld.setMessage(message)
91 .setPositiveButton("Zur Homepage", new DialogInterface.OnClickListener() {
92 public void onClick(DialogInterface dialog, int id) {
93 String url = "http://www.ideenfrische.de/"+o.get("link");
94 Intent i = new Intent(Intent.ACTION_VIEW);
95 i.setData(Uri.parse(url));
96 startActivity(i);
97 }
98 })
99 .setNegativeButton("Zurück", new DialogInterface.OnClickListener() {
100 public void onClick(DialogInterface dialog, int id) {
101 dialog.cancel();
102 }
103 });
104 alt_bld.show();
105 }
106 });
107 }
108
109 @Override
110 public boolean onCreateOptionsMenu(Menu menu)
111 {
112 super.onCreateOptionsMenu(menu);
113 MenuItem item = menu.add(0, BACK_ID, 0, "Beenden");
114 return true;
115 }
116
117 @Override
118 public boolean onOptionsItemSelected(MenuItem item) {
119 switch (item.getItemId()) {
120 case BACK_ID:
121 finish();
122 return true;
123 }
124 return super.onOptionsItemSelected(item);
125 }
126}
2
3import java.io.IOException;
4import java.io.InputStream;
5import java.net.MalformedURLException;
6import java.net.URL;
7import java.util.ArrayList;
8import java.util.HashMap;
9
10import org.w3c.dom.Document;
11import org.w3c.dom.Element;
12import org.w3c.dom.NodeList;
13
14import android.app.AlertDialog;
15import android.app.ListActivity;
16import android.content.Context;
17import android.content.DialogInterface;
18import android.content.Intent;
19import android.graphics.drawable.Drawable;
20import android.net.Uri;
21import android.os.Bundle;
22import android.view.Menu;
23import android.view.MenuItem;
24import android.view.View;
25import android.widget.AdapterView;
26import android.widget.AdapterView.OnItemClickListener;
27import android.widget.ImageView;
28import android.widget.ListAdapter;
29import android.widget.ListView;
30import android.widget.SimpleAdapter;
31import android.widget.Toast;
32
33public class Main extends ListActivity {
34
35 static final private int BACK_ID = Menu.FIRST;
36 /** Called when the activity is first created. */
37 @Override
38
39 public void onCreate(Bundle savedInstanceState) {
40 super.onCreate(savedInstanceState);
41 setContentView(R.layout.listplaceholder);
42
43 ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
44
45
46 String xml = XMLfunctions.getXML();
47 Document doc = XMLfunctions.XMLfromString(xml);
48
49 int numResults = XMLfunctions.numResults(doc);
50
51 if((numResults <= 0)){
52 Toast.makeText(Main.this, "Kein Ergebniss!", Toast.LENGTH_LONG).show();
53 finish();
54 }
55
56 NodeList nodes = doc.getElementsByTagName("referenz");
57
58 for (int i = 0; i < nodes.getLength(); i++) {
59 HashMap<String, String> map = new HashMap<String, String>();
60
61 Element e = (Element)nodes.item(i);
62 map.put("projekt", XMLfunctions.getValue(e, "projekt"));
63 map.put("link", XMLfunctions.getValue(e, "link"));
64 map.put("kunde", "Kunde: " + XMLfunctions.getValue(e, "kunde"));
65 map.put("jahr", "Jahr: " + XMLfunctions.getValue(e, "jahr"));
66 map.put("technologie", "Technologie: " + XMLfunctions.getValue(e, "technologie"));
67 map.put("image", XMLfunctions.getValue(e, "image"));
68 mylist.add(map);
69 }
70
71 ListAdapter adapter = new SimpleAdapter(this, mylist , R.layout.main,
72 new String[] { "kunde", "projekt", "image", "technologie", "link", "jahr" },
73 new int[] { R.id.item_title, R.id.item_subtitle, R.id.item_image });
74
75 setListAdapter(adapter);
76
77 final ListView lv = getListView();
78 lv.setTextFilterEnabled(true);
79 lv.setOnItemClickListener(new OnItemClickListener() {
80 public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
81 @SuppressWarnings("unchecked")
82 final HashMap<String, String> o = (HashMap<String, String>) lv.getItemAtPosition(position);
83
84
85 String title = o.get("kunde");
86 String message = o.get("projekt")+"\n"+o.get("jahr")+"\n"+o.get("technologie");
87
88 AlertDialog.Builder alt_bld = new AlertDialog.Builder(Main.this);
89 alt_bld.setTitle(title);
90 alt_bld.setMessage(message)
91 .setPositiveButton("Zur Homepage", new DialogInterface.OnClickListener() {
92 public void onClick(DialogInterface dialog, int id) {
93 String url = "http://www.ideenfrische.de/"+o.get("link");
94 Intent i = new Intent(Intent.ACTION_VIEW);
95 i.setData(Uri.parse(url));
96 startActivity(i);
97 }
98 })
99 .setNegativeButton("Zurück", new DialogInterface.OnClickListener() {
100 public void onClick(DialogInterface dialog, int id) {
101 dialog.cancel();
102 }
103 });
104 alt_bld.show();
105 }
106 });
107 }
108
109 @Override
110 public boolean onCreateOptionsMenu(Menu menu)
111 {
112 super.onCreateOptionsMenu(menu);
113 MenuItem item = menu.add(0, BACK_ID, 0, "Beenden");
114 return true;
115 }
116
117 @Override
118 public boolean onOptionsItemSelected(MenuItem item) {
119 switch (item.getItemId()) {
120 case BACK_ID:
121 finish();
122 return true;
123 }
124 return super.onOptionsItemSelected(item);
125 }
126}
Liebe Grüße,
Malte
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.