我需要从我的asynctask更新textView。我有一个自定义适配器的列表视图,在那里我想为每个条目倒计时。我将从适配器启动每个条目的asynctask。我怎样才能从asynctask每秒更新textview?更新ListView Textview vom Asyntask
感谢您的帮助:)
我需要从我的asynctask更新textView。我有一个自定义适配器的列表视图,在那里我想为每个条目倒计时。我将从适配器启动每个条目的asynctask。我怎样才能从asynctask每秒更新textview?更新ListView Textview vom Asyntask
感谢您的帮助:)
如果您发布您的代码,我可以给你一个更好的答案。但是,定期更新视图的常用方法是使用Handlers。
private final Handler mHandler = new Handler(); //intialize in main thread
public void test() {
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
mTextView.setText("hello");
}
}, 1000);
}
完美,谢谢:) – user3384194
你可以做这样的事情(这将添加一个条目到列表视图每隔一秒)。我用普通的ArrayAdapter来添加一个字符串。您可以使用您的自定义适配器来做类似的事情。该publishProgress()方法主要触发其钩到UI线程的onProgressUpdate()方法,并显示获取添加元素:
类AddStringTask扩展的AsyncTask {
@Override
protected Void doInBackground(Void... params) {
for(String item : items) {
publishProgress(item);
SystemClock.sleep(1000);
}
return null;
}
@Override
protected void onProgressUpdate(String... item) {
adapter.add(item[0]);
}
@Override
protected void onPostExecute(Void unused) {
Toast.makeText(getActivity(), "Done adding string item", Toast.LENGTH_SHORT).show();
}
}
嗨!试着在你的问题上张贴代码,你会得到更多的关注,人们不必猜测! – rupps