2011-01-22 2 views
1

친구,Lazy fedor에 의한 목록 업데이트 문제 입문서?

내가 게으른로드 목록보기로 다음 자습서를 사용하고

새로운 데이터가 내가 뭐하는 거지 실수로 나를 인도 어느 하나에 오면 이제 문제는 내가 업데이트 할 수 있습니까? Lazy Load Tutorial

내 변경된 코드

public class MainActivity extends Activity { 

    ListView list; 
    LazyAdapter adapter; 

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

     list=(ListView)findViewById(R.id.list); 
     adapter=new LazyAdapter(this, mStrings,mValues); 
     list.setAdapter(adapter); 

     Button b=(Button)findViewById(R.id.button1); 
     b.setOnClickListener(listener); 
    } 

    @Override 
    public void onDestroy() 
    { 
     adapter.imageLoader.stopThread(); 
     list.setAdapter(null); 
     super.onDestroy(); 
    } 

    public OnClickListener listener=new OnClickListener(){ 
     @Override 
     public void onClick(View v) { 
      adapter.imageLoader.clearCache(); 
      ChangeData(); 
      // adapter=new LazyAdapter(MainActivity.this, mStrings,mValues); 

      adapter.notifyDataSetChanged(); 
     } 
    }; 

    public void ChangeData() 
    { 
     mValues = mValues1; 
     mStrings = mStrings2; 

    } 

private String[] mValues = { 

      "670625317/aam-logo-v3-twitter.png", 
      "740897825/AndroidCast-350_normal.png", 
      "121630227/Droid_normal.jpg", 
      "957149154/twitterhalf_normal.jpg" 
}; 


    private String[] mValues1 = { 

      "670625317/aam-logo-v3-twitter.png", 
      "740897825/AndroidCast-350_normal.png", 
      "121630227/Droid_normal.jpg", 
      "957149154/twitterhalf_normal.jpg", 
      "97470808/icon_normal.png", 
      "511790713/AG.png", 
      "956404323/androinica-avatar_normal.png", 
      "909231146/Android_Biz_Man_normal.png", 


    }; 


    private String[] mStrings ={ "http://zef.me/wp-content/uploads/2008/02/funny-cat.jpg", 
      "http://www.prchurch.com/data/43_800px-Bulgaria_stub.svg.png", 
      "http://a3.twimg.com/profile_images/121630227/Droid_normal.jpg", 
      "http://a1.twimg.com/profile_images/957149154/twitterhalf_normal.jpg"}; 


    private String[] mStrings2={ 
      "http://zef.me/wp-content/uploads/2008/02/funny-cat.jpg", 
      "http://www.prchurch.com/data/43_800px-Bulgaria_stub.svg.png", 
      "http://a3.twimg.com/profile_images/121630227/Droid_normal.jpg", 
      "http://a1.twimg.com/profile_images/957149154/twitterhalf_normal.jpg", 
      "http://a1.twimg.com/profile_images/97470808/icon_normal.png", 
      "http://a3.twimg.com/profile_images/511790713/AG.png", 
      "http://a3.twimg.com/profile_images/956404323/androinica-avatar_normal.png", 
      "http://a1.twimg.com/profile_images/909231146/Android_Biz_Man_normal.png", 
       }; 
} 

답변

5

아마 뭔가 :

public OnClickListener listener=new OnClickListener(){ 
    @Override 
    public void onClick(View v) { 
     adapter.mValues = mValues1; 
     adapter.mStrings = mStrings2; 
     adapter.notifyDataSetChanged(); 
    } 
}; 
+0

예. 도와 줘서 고마워. :) adapter.data = mStrings1; 일했다! – UMAR

0

여기에서 일어나고있는 것은 데이터가 정말 어댑터 변경되지 않는다는 것입니다 뭐죠 저는 믿습니다. 당신은 어댑터에이 같은 방법을 추가 할 수 있습니다

changeData(String[] d) { 

data=d; 
notifyDatasetChanged(); 
} 

내가 그 문제를 해결한다고 생각합니다.

건배 그런

+0

어떤이는 문제가되지 않습니다. – UMAR