0
我已經定義了一個ListView,塔從服務獲取數據,它有一個空的觀點太:清空列表視圖黑色閃光
public class MyActivity extends Activity {
MyObject myObject;
ListView myListView;
MyAdapter myAdapter;
ArrayList<MyListElement> myElements;
Handler h = new Handler(){
public void handleMessage (Message msg){
if(msg.what == 0){
init((ArrayList<MyListElement>))
}
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.my_layout);
myListView = (ListView) findViewById(R.id.my_listview);
myObject = (myObject) getIntent().getExtras().get("myObj");
setTitle(getString(R.string.title_activity_chat) + myObject.getDisplayedName());
myElements = new ArrayList<MyListElement>();
LayoutInflater inflater = getLayoutInflater();
myAdapter = new MyAdapter(this, this, R.layout.my_activity, myElements);
myListView.setEmptyView(findViewById(R.id.text1));
myListView.setAdapter(myAdapter);
Intent i = new Intent(MyActivity.this, MyService.class);
...
startService(i);
}
protected void init(List<MyListElement> pHistory) {
myAdapter.addAll(pHistory);
myAdapter.notifyDataSetChanged()
}
...
}
,我有一個自己的ArrayAdapter(MyAdapter)。
我的問題是,當我開始活動並在將數據返回到init(...)後調用服務時,UI會用黑色閃光刷新自己。
有人遇到過這個問題嗎?
不讀你的代碼,檢查了這一點:http://stackoverflow.com/questions/2833057/background-listview-becomes-black-when滾動 – VM4
這不是一個滾動問題,在init之後我可以用數據做所有事情,清除或添加+ n行,只是第一個(starter)事件會導致此行爲。 – kisstajmi