我的Android活動中有一個ListView
,它使用自定義BaseAdapter
(名爲ClientListAdapter
)作爲其人口。 我在這個AsyncTask中填充這個視圖的內容。在其創建後選擇ListView元素
public class MyActivity {
[…]
ClientListAdapter clientListAdapter;
[…]
private class MyTask extends AsyncTask<String, Integer, String>{
@Override
protected String doInBackground(String... params) {
Client client = getClient();
List<Client> clients = new ArrayList<>();
clients.add(client);
clientListAdapter = new ClientListAdapter(MyActivity.this, clients);
return 「OK";
}
@Override
protected void onPostExecute(String result) {
clientList.setAdapter(clientListAdapter);
}
}
}
現在我想選擇此ListView的第一個(也是唯一)行。並以 「選擇」 我的意思是:
其實與 「爲setSelection」 OR
只需突出顯示該行或整個ListView的選擇。
我的問題是,在onPostExecute
方法我無法到達那一行。 我試過了:
clientList.setSelection(0);
- >什麼也沒做。
clientList.getChildAt(0).setBackground(#somecolor);
- >沒有clientList.getChildAt(0)
clientList.setBackground(#somecolor);
- >奇怪的是,什麼也沒做。
任何想法我缺少什麼?
它的工作,非常感謝你! –