ListView onListItemClick confused

Put problem concerning Views, Layouts and other XML-Resources (like AndroidManifest) here.

ListView onListItemClick confused

Postby viju85 » Wed Feb 25, 2009 1:59 am

Hi,
I am creating an application which parses an XML from the web and
displays the items of a <title>tag in another ListView. Basically i
want to know an effecient way of using ListView all throughout the
application.

Ex:
Part
1
Part 2 Part 3
My Bookshelf -----Click----->Opens another ListView ---->Book 1-------
> Click------> ListView----->First Page

Options
Book 2
Help
Exit

I am able to go from part 1 to part 2. but not from part 2 to part3. I
might be doing some mistake in part 1 to part 2 itself.

Please advise. I am very confused and stuck.

My Code:
Syntax: [ Download ] [ Hide ]
Using java Syntax Highlighting
  1.  
  2.  
  3.  
  4. package com.vijay.Splash;
  5.  
  6.  
  7.  
  8. import java.io.IOException;
  9.  
  10. import java.io.InputStream;
  11.  
  12. import java.net.HttpURLConnection;
  13.  
  14. import java.net.URL;
  15.  
  16. import java.net.URLConnection;
  17.  
  18. import java.util.ArrayList;
  19.  
  20.  
  21.  
  22. import javax.xml.parsers.DocumentBuilder;
  23.  
  24. import javax.xml.parsers.DocumentBuilderFactory;
  25.  
  26. import javax.xml.parsers.ParserConfigurationException;
  27.  
  28.  
  29.  
  30. import org.w3c.dom.Document;
  31.  
  32. import org.w3c.dom.Element;
  33.  
  34. import org.w3c.dom.Node;
  35.  
  36. import org.w3c.dom.NodeList;
  37.  
  38. import org.xml.sax.SAXException;
  39.  
  40.  
  41.  
  42. import android.app.ListActivity;
  43.  
  44. import android.content.Intent;
  45.  
  46. import android.os.Bundle;
  47.  
  48. import android.view.View;
  49.  
  50. import android.widget.ArrayAdapter;
  51.  
  52. import android.widget.ListView;
  53.  
  54.  
  55.  
  56.  
  57.  
  58. public class MogoMenu extends ListActivity {
  59.  
  60.        
  61.  
  62.        
  63.  
  64.         ArrayList<String> linksArray = new ArrayList();
  65.  
  66.         ArrayList<String> itemsArray = new ArrayList();
  67.  
  68.         private static final int ACTIVITY_BOOKS=1;
  69.  
  70.    
  71.  
  72.  
  73.  
  74.        
  75.  
  76.         /** Called when the activity is first created. */
  77.  
  78.     @Override
  79.  
  80.     public void onCreate(Bundle savedInstanceState) {
  81.  
  82.         super.onCreate(savedInstanceState);
  83.  
  84.        
  85.  
  86.         setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, MENU_NAMES));
  87.  
  88.     }
  89.  
  90.    
  91.  
  92.     private static final String[] MENU_NAMES = new String[] {
  93.  
  94.         "My Bookshelf",
  95.  
  96.         "On the Go",
  97.  
  98.         "Options",
  99.  
  100.         "Help",
  101.  
  102.     };
  103.  
  104.    
  105.  
  106.     public void onListItemClick(ListView l, View v, int position, long id) {
  107.  
  108.         // Pre-load the image then start the animation
  109.  
  110.         System.out.println("LISTVIEW" +getListView().toString());
  111.  
  112.         System.out.println("On Item Click" +position);
  113.  
  114.         if(position == 0)
  115.  
  116.         {
  117.  
  118.                 DownloadBookShelf("http://xmlgwdev.lotusbookworks.com/?acctid=0bfHgPce7k:Hiw6hsB4fx&listID=1");
  119.  
  120.                 //setListAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,itemsArray));
  121.  
  122.                 Intent i = new Intent(this, ViewBook.class);
  123.  
  124.             i.putExtra("bookTitle", id);
  125.  
  126.             i.putStringArrayListExtra("bookLink",linksArray);
  127.  
  128.             startActivity(i);
  129.  
  130.             finish();
  131.  
  132.         }
  133.  
  134.         else if(position == 3)
  135.  
  136.         {
  137.  
  138.                 setContentView(R.layout.help);
  139.  
  140.         }
  141.  
  142.        
  143.  
  144.        
  145.  
  146.     }
  147.  
  148.  
  149.  
  150.  
  151.  
  152.     public InputStream OpenHttpConnection(String urlString) throws IOException
  153.  
  154.     {
  155.  
  156.         InputStream in = null;
  157.  
  158.         int response = -1;
  159.  
  160.                
  161.  
  162.         URL url = new URL(urlString);
  163.  
  164.         URLConnection conn = url.openConnection();
  165.  
  166.         System.out.println("Opening Connection");
  167.  
  168.         if (!(conn instanceof HttpURLConnection))                    
  169.  
  170.             throw new IOException("Not an HTTP connection");
  171.  
  172.        
  173.  
  174.         try
  175.  
  176.         {
  177.  
  178.                 System.out.println("Obtaining CONNECTION");
  179.  
  180.             HttpURLConnection httpConn = (HttpURLConnection) conn;
  181.  
  182.             httpConn.setAllowUserInteraction(false);
  183.  
  184.             httpConn.setInstanceFollowRedirects(true);
  185.  
  186.             httpConn.setRequestMethod("GET");
  187.  
  188.             System.out.println("Connecting");
  189.  
  190.             httpConn.connect();
  191.  
  192.  
  193.  
  194.             response = httpConn.getResponseCode();                
  195.  
  196.             if (response == HttpURLConnection.HTTP_OK)
  197.  
  198.             {
  199.  
  200.                 System.out.println("SUPER CONNECTION");
  201.  
  202.                 in = httpConn.getInputStream();
  203.  
  204.                 System.out.println("Bitmap puttin into IMG1");
  205.  
  206.             }                    
  207.  
  208.         }
  209.  
  210.         catch (Exception ex)
  211.  
  212.         {
  213.  
  214.             throw new IOException("Error connecting");            
  215.  
  216.         }
  217.  
  218.         return in;    
  219.  
  220.     }
  221.  
  222.    
  223.  
  224.    
  225.  
  226.     /*Download XML RSS feed*/
  227.  
  228.         private void DownloadBookShelf(String URL)
  229.  
  230.     {
  231.  
  232.         InputStream in = null;
  233.  
  234.         try {
  235.  
  236.             in = OpenHttpConnection(URL);
  237.  
  238.             Document doc = null;
  239.  
  240.             DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
  241.  
  242.             DocumentBuilder db;
  243.  
  244.            
  245.  
  246.             try {
  247.  
  248.                 db = dbf.newDocumentBuilder();
  249.  
  250.                 doc = db.parse(in);
  251.  
  252.             } catch (ParserConfigurationException e) {
  253.  
  254.                 // TODO Auto-generated catch block
  255.  
  256.                 e.printStackTrace();
  257.  
  258.             } catch (SAXException e) {
  259.  
  260.                 // TODO Auto-generated catch block
  261.  
  262.                 e.printStackTrace();
  263.  
  264.             }        
  265.  
  266.            
  267.  
  268.             doc.getDocumentElement().normalize();
  269.  
  270.             itemsArray.clear();
  271.  
  272.             linksArray.clear();
  273.  
  274.            
  275.  
  276.            
  277.  
  278.             String strTitle = null;
  279.  
  280.             String strLink = null;
  281.  
  282.            
  283.  
  284.             NodeList itemNodesList = doc.getElementsByTagName("a");
  285.  
  286.            
  287.  
  288.             for (int i = 0; i < itemNodesList.getLength(); i++) {
  289.  
  290.                 Node itemNode = itemNodesList.item(i);
  291.  
  292.                 if (itemNode.getNodeType() == Node.ELEMENT_NODE)
  293.  
  294.                 {            
  295.  
  296.                     //---convert the Node into an Element---
  297.  
  298.                     Element itemElement = (Element) itemNode;
  299.  
  300.                    
  301.  
  302.                     //---get all the TITLES element under the  
  303.  
  304.                     NodeList titleNodes =
  305.  
  306.                         (itemElement).getElementsByTagName("a");
  307.  
  308.                    
  309.  
  310.                     Element titleElement = (Element) titleNodes.item(0);
  311.  
  312.                    
  313.  
  314.                     //---get all the child nodes under the <title> element---
  315.  
  316.                     NodeList textitemNodes =
  317.  
  318.                         ((Node) titleElement).getChildNodes();
  319.  
  320.                    
  321.  
  322.                     //---retrieve the text of the <title> element---
  323.  
  324.                     strTitle = ((Node) textitemNodes.item(0)).getNodeValue();
  325.  
  326.                     itemsArray.add(strTitle);
  327.  
  328.                     System.out.println("ITEM : "+strTitle);
  329.  
  330.                 }
  331.  
  332.             }
  333.  
  334.  
  335.  
  336.             for (int i = 0; i < itemNodesList.getLength(); i++) {
  337.  
  338.                         strLink = ((Element) itemNodesList.item(i)).getAttribute("href");
  339.  
  340.                     linksArray.add(strTitle);
  341.  
  342.                     System.out.println("URL LINK: "+strLink);
  343.  
  344.            }
  345.  
  346.            
  347.  
  348.            
  349.  
  350.             in.close();
  351.  
  352.         } catch (IOException e1) {
  353.  
  354.             e1.printStackTrace();            
  355.  
  356.         }
  357.  
  358.        
  359.  
  360.        
  361.  
  362.     }
  363.  
  364.    
  365.  
  366.    
  367.  
  368. }
  369.  
  370.  
  371.  
  372.  
  373.  
  374.  
Parsed in 0.056 seconds, using GeSHi 1.0.8.4
viju85
Junior Developer
Junior Developer
 
Posts: 20
Joined: Mon Feb 23, 2009 10:17 pm

Top

Postby kali » Thu Feb 26, 2009 12:59 pm

hai friend
is it possible to extend two thinks in one application
for example
public class expe extends Activity : ListActivity.
Last edited by kali on Mon Mar 09, 2009 7:11 am, edited 1 time in total.
kali
Experienced Developer
Experienced Developer
 
Posts: 62
Joined: Tue Jan 27, 2009 1:31 pm

Postby kali » Mon Mar 02, 2009 2:11 pm

haiu friend
is there any way to use an image in list view
is any one tell me
pls???
!!!!!!!!!!!!!
kali
Experienced Developer
Experienced Developer
 
Posts: 62
Joined: Tue Jan 27, 2009 1:31 pm

Top

Return to View, Layout & Resource Problems

Who is online

Users browsing this forum: No registered users and 7 guests