2013-01-11 6 views
5

अंतहीन स्क्रॉलव्यू सूचीदृश्य में काम नहीं कर रहा है, सूचीदृश्य आइटम webservice से लोड हो रहा है 10 आइटम प्रति पृष्ठ प्रदर्शित कर रहे हैं। सूचीदृश्य वेबसाइकिल से गतिशील रूप से पृष्ठांकित अंतहीन सूचीदृश्य की तरह लोड होना चाहिए। मैं एंड्रॉइड के लिए नया हूँ क्या कोई मुझे सही दिशा में जाने में मदद कर सकता है? निम्नलिखित, कोडएंड्रॉइड पेजिनेटेड अंतहीन सूचीदृश्य काम नहीं कर रहा

public class MainActivity extends ListActivity { 


    ListView list; 
    LazyAdapter adapter; 
    JSONArray posts; 

// All static variables 
static final String URL = "website"; 


static final String KEY_POSTS = "posts"; 
static final String KEY_ID = "id"; 
static final String KEY_TITLE = "title"; 
static final String KEY_DATE = "date"; 
static final String KEY_CONTENT = "content"; 
static final String KEY_AUTHOR = "author"; 
static final String KEY_NAME = "name"; 
static final String KEY_ATTACHMENTS = "attachments"; 
static final String KEY_SLUG = "slug"; 
static final String KEY_THUMB_URL = "thumbnail"; 
static final String KEY_IMAGES = "images"; 
static final String KEY_URL = "url"; 




@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 



    final Handler handler = new Handler(); 
    Runnable runable = new Runnable() { 

     @Override 
     public void run() { 

      //call the function 
      LoadData(); 
      //also call the same runnable 
      handler.postDelayed(this, 40000); 
     } 
    }; 
    handler.postDelayed(runable, 10); 

}public void LoadData(){ 

    ArrayList<HashMap<String, String>> songsList = new ArrayList<HashMap<String, String>>(); 


     // Creating JSON Parser instance 
       JSONParser jParser = new JSONParser(); 

       // getting JSON string from URL 
       JSONObject json = jParser.getJSONFromUrl(URL); 
       try { 
        JSONArray posts = json.getJSONArray(KEY_POSTS); 

     // looping through all song nodes <song> 
       for(int i = 0; i < posts.length(); i++){ 
        JSONObject c = posts.getJSONObject(i); 
        // Storing each json item in variable 
        String id = c.getString(KEY_ID); 
        String title = c.getString(KEY_TITLE); 
        String date = c.getString(KEY_DATE); 
        String content = c.getString(KEY_CONTENT); 
        // to remove all <P> </p> and <br /> and replace with "" 
        content = content.replace("<br />", ""); 
        content = content.replace("<p>", ""); 
        content = content.replace("</p>", ""); 

        //authornumber is agin JSON Object 
        JSONObject author = c.getJSONObject(KEY_AUTHOR); 
        String name = author.getString(KEY_NAME); 

        String url = null; 
        String slug = null; 
        try { 
        JSONArray atta = c.getJSONArray("attachments"); 
        for(int j = 0; j < atta.length(); j++){ 
         JSONObject d = atta.getJSONObject(j); 

         slug = d.getString(KEY_SLUG); 

         JSONObject images = d.getJSONObject(KEY_IMAGES); 

         JSONObject thumbnail = images.getJSONObject(KEY_THUMB_URL); 
         url = thumbnail.getString(KEY_URL); 

        } 
        } catch (Exception e) { 
         e.printStackTrace(); 

        } 




      // creating new HashMap 
      HashMap<String, String> map = new HashMap<String, String>(); 

      // adding each child node to HashMap key => value 
      map.put(KEY_ID, id); 
      map.put(KEY_TITLE, title); 
      map.put(KEY_DATE, date); 
      map.put(KEY_NAME, name); 
      map.put(KEY_CONTENT, content); 
      map.put(KEY_SLUG, slug); 
      map.put(KEY_URL, url); 


      // adding HashList to ArrayList 
      songsList.add(map); 
       } 
       }catch (JSONException e) { 
        e.printStackTrace(); 

        } 

     ListView list=(ListView)findViewById(android.R.id.list); 

     // Getting adapter by passing json data ArrayList 
     adapter=new LazyAdapter(this, songsList);   
     list.setAdapter(adapter); 



    // Launching new screen on Selecting Single ListItem 
    list.setOnItemClickListener(new OnItemClickListener() { 

     public void onItemClick(AdapterView<?> parent, View view, 
       int position, long id) { 
      // getting values from selected ListItem 
      String title = ((TextView) view.findViewById(R.id.title)).getText().toString(); 
      String date = ((TextView) view.findViewById(R.id.date)).getText().toString(); 
      String name = ((TextView) view.findViewById(R.id.name)).getText().toString(); 
      String content = ((TextView) view.findViewById(R.id.content)).getText().toString(); 

      // Starting new intent 
      Intent in = new Intent(getApplicationContext(),SampleDesp.class); 
      in.putExtra(KEY_TITLE, title); 
      in.putExtra(KEY_DATE, date); 
      in.putExtra(KEY_NAME, name); 
      in.putExtra(KEY_CONTENT, content); 
      startActivity(in); 

     } 
    }); 


    list.setOnScrollListener(new OnScrollListener(){ 

     @Override 
     public void onScroll(AbsListView view, int firstVisibleItem, 
       int visibleItemCount, int totalItemCount) { 
      // TODO Auto-generated method stub 

     } 

     @Override 
     public void onScrollStateChanged(AbsListView view, 
       int scrollState) { 
      // TODO Auto-generated method stub 

     } 

     }); 
} 
    } 

उत्तर

0

अपने तरीके load() हमेशा गलत लौट जाता है निष्पादित कभी नहीं होगा (new LoadNextPage()).execute("");

+0

मेरी समस्या http://stackoverflow.com/questions/10204698/endless-scrolling-for-listview के समान है इसलिए मैंने अपना कोड संपादित किया है, कृपया आप जांच सकते हैं – theremin

संबंधित मुद्दे