我需要檢查ListView上的所有元素以將標籤僅設置爲其中的一個。 我無法編輯數據庫或適配器,我只想滾動ListView來執行檢查並在TextView上設置一個字符串。getChildCount()在ListView上返回0
@Override
protected void onResume(){
super.onResume();
...
cursor = getCursor();
startManagingCursor(cursor);
adapter = new SimpleCursorAdapter(this,R.layout.profile_item_layout,cursor,from,to);
lst_profiles.setAdapter(adapter);
SharedPreferences customSharedPreference = PreferenceManager.getDefaultSharedPreferences(ProfilerActivity.this.getApplicationContext());
long current = customSharedPreference.getLong(ProfileManager.CURRENT, -1);
toast(lst_profiles.getChildCount()); //display 0
if(current!=-1){
for(int i=0;i<lst_profiles.getChildCount();i++){
if(lst_profiles.getItemIdAtPosition(i)==current)
((TextView)lst_profiles.getChildAt(i).findViewById(R.id.activeLabel)).setText(getString(R.string.active));
else
((TextView)lst_profiles.getChildAt(i).findViewById(R.id.activeLabel)).setText("");
}
}
}
我該怎麼辦?我需要等一下嗎?
P.S.顯然ListView不是空的。
你是如何()調用這裏getCursor?我沒有看到一個活動或上下文的方法... – Maximus
是的我在onResume()中調用getCursor()。該應用程序工作正常,唯一的問題是getChildCount() – JoP