2013-03-20 60 views
0

我正在使用.net網絡服務。我正在嘗試獲取ListView的列表。現在它向我展示了第一個列表,但是當我試圖再次使用相同的方法獲取它時,它會給我一個日誌響應但不顯示在列表中。如何刷新列表在android中查看?

我在我的Adapter中使用了mAdapter.notifyDataSetChanged();,但它不起作用。請幫忙。感謝

我的代碼:

Intent mIntent = getIntent(); 
    mIntent.getStringExtra("folder_name"); 
    Id = mIntent.getStringExtra("folder_ID"); 
    mIntent.getStringExtra("item_parent"); 
    User_ID = mIntent.getStringExtra("User_ID"); 

    subfolderTreedata(); 
} 
    public void subfolderTreedata() { 
    try { 
    -------- 
    -------- 
    -------- //some code here... 

SoapObject SubfolderResponse = (SoapObject)envelope.getResponse(); 

     Log.i("SubFolders", SubfolderResponse.toString()); 

     String File_Ext=" "; 

     subfoldersitem = new String[SubfolderResponse.getPropertyCount()]; 

     System.out.println(subfoldersitem.length); 

     for(int i=0; i < SubfolderResponse.getPropertyCount(); i++) { 
      SoapObject SingleSubFolder = (SoapObject)SubfolderResponse.getProperty(i); 

      subfoldersitem[0] = SingleSubFolder.getProperty(1).toString(); 
      subfoldersitem[1] = SingleSubFolder.getProperty(0).toString(); 
      subfoldersitem[2] = SingleSubFolder.getProperty(3).toString(); 

      if(KEY_SUBJECTTYPE.equalsIgnoreCase("Folder")) { 

      item = new FolderList(Folderimages[0], subfoldersitem[0], subfoldersitem[1], subfoldersitem[2]); 
      Subfolderdata.add(item); 

      } else{ 

       StringTokenizer tokens = new StringTokenizer(Name, "."); 
       @SuppressWarnings("unused") 
       String first_string = tokens.nextToken(); 
       File_Ext = tokens.nextToken(); 

        if(File_Ext.equalsIgnoreCase("TIF")) { 
         item = new FolderList(TIFimages[0], subfoldersitem[0], subfoldersitem[1], subfoldersitem[2]); 
         Subfolderdata.add(item); 

        } else { 
         item = new FolderList(noImage[0], subfoldersitem[0], subfoldersitem[1], subfoldersitem[2]); 
         Subfolderdata.add(item); } 
     } 
    } 
      subfolderslistview = (ListView)findViewById(R.id.subfolderslistview); 

      mAdapter = new LazyAdapter(this, R.layout.jpg_row, Subfolderdata); 
      subfolderslistview.setAdapter(mAdapter); 
      mAdapter.notifyDataSetChanged(); 

      subfolderslistview.setOnItemClickListener(new OnItemClickListener() { 

       public void onItemClick(AdapterView<?> parent, View v, int position, long id) { 

        LazyAdapter ca = (LazyAdapter)parent.getAdapter(); 
        FolderList item_name = (FolderList)ca.getItem(position); 
        FolderList DocumentID = (FolderList)ca.getItem(position); 
        FolderList type = (FolderList)ca.getItem(position); 

        Intent mIntent = new Intent(); 
        mIntent.putExtra("item_name", item_name.folder_name); 
        mIntent.putExtra("item_id", DocumentID.ID); 
        mIntent.putExtra("item_type", type.type); 

        mIntent.getStringExtra("item_name"); 

        String Type = mIntent.getStringExtra("item_type"); 

        Log.i("Type", Type); 

        if(Type.equalsIgnoreCase("Folder")){ 

         Id = mIntent.getStringExtra("item_id"); 
         mAdapter.notifyDataSetChanged(); 
         subfolderTreedata(); 

        } else { 

         Intent i = new Intent(getApplicationContext(), Display_image.class); 
         i.putExtra("item_name", item_name.folder_name); 
         i.putExtra("ID", DocumentID.ID); 
         i.putExtra("item_type", type.type); 
         i.putExtra("User_ID",User_ID); 

         i.getStringExtra("item_name"); 
         Id = i.getStringExtra("ID"); 
         i.getStringExtra("item_type"); 
         Log.i("id", Id); 
         startActivity(i); 
         } 
        } 
       }); 
+1

是你使用的代碼,'mAdapter.notifyDataSetChanged();'不夠? – Doomsknight 2013-03-20 12:03:07

+0

@shiva嘿,米也在chandigarh,進入這個房間,讓我們在這裏聊天,chat.stackoverflow.com/rooms/24164/discussion-between-rohit-and-tushar – Rohit 2013-03-20 12:07:56

+0

http://chat.stackoverflow.com/rooms/24164/discussion-between-rohit-and-tushar – Rohit 2013-03-20 12:08:47

回答

1
public void list() { 
    mAdapter = new LazyAdapter(this, R.layout.jpg_row, Subfolderdata); 
    subfolderslistview.setAdapter(mAdapter); 
} 

使用這樣list();

從哪裏調用此方法。

+0

好吧,讓我檢查... – Shweta 2013-03-20 12:54:39

+0

不要使用notifyDataSetChanged();這一個在某些條件下不起作用。 – Nirmal 2013-03-20 13:16:21

+0

嗨,尼爾馬爾在那裏? – Shweta 2013-03-21 05:04:42