国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Android - Android通過Handler與AsyncTask兩種方式動態更新ListView(附源碼)

Android通過Handler與AsyncTask兩種方式動態更新ListView(附源碼)

2021-04-16 15:59Android開發網 Android

這篇文章主要介紹了Android通過Handler與AsyncTask兩種方式動態更新ListView的方法,結合實例形式分析了ListView動態更新的常用技巧,并附上完整實例源碼供讀者下載,需要的朋友可以參考下

本文實例講述了Android通過HandlerAsyncTask兩種方式動態更新ListView的方法。分享給大家供大家參考,具體如下:

有時候我們需要修改已經生成的列表,添加或者修改數據,notifyDataSetChanged()可以在修改適配器綁定的數組后,不用重新刷新Activity,通知Activity更新ListView。今天的例子就是通過Handler AsyncTask兩種方式來動態更新ListView.

布局main.xml:

?
1
2
3
4
5
6
7
8
9
10
11
12
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 android:orientation="vertical"
 android:layout_width="fill_parent"
 android:layout_height="fill_parent"
 >
<ListView android:id="@+id/lv"
 android:layout_width="fill_parent"
 android:layout_height="wrap_content"
 android:text="@string/hello"
 />
</LinearLayout>

ListView列表布局playlist.xml:

?
1
2
3
4
5
6
7
8
<?xml version="1.0" encoding="utf-8"?>
<TextView
 android:id="@+id/text1"
 xmlns:android="http://schemas.android.com/apk/res/android"
 android:layout_width="fill_parent"
 android:layout_height="30px"
 android:textSize="18sp"
></TextView>

程序代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.pocketdigi;
import java.util.ArrayList;
import android.app.Activity;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.AdapterView.OnItemClickListener;
public class main extends Activity {
 /** Called when the activity is first created. */
  ListView lv;
  ArrayAdapter<String> Adapter;
  ArrayList<String> arr=new ArrayList<String>();
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
  lv=(ListView)findViewById(R.id.lv);
   arr.add("123");
   arr.add("234");
   arr.add("345");
   Adapter = new ArrayAdapter<String>(this,R.layout.playlist, arr);
   lv.setAdapter(Adapter);
   lv.setOnItemClickListener(lvLis);
   editItem edit= new editItem();
   edit.execute("0","第1項");//把第一項內容改為"第一項"
   Handler handler=new Handler();
   handler.postDelayed(add,3000);//延遲3秒執行
 }
 Runnable add=new Runnable(){
    @Override
    public void run() {
      // TODO Auto-generated method stub
      arr.add("增加一項");//增加一項
      Adapter.notifyDataSetChanged();
    }  
 };
 class editItem extends AsyncTask<String,Integer,String>{
    @Override
    protected String doInBackground(String... params) {
        arr.set(Integer.parseInt(params[0]),params[1]);
        //params得到的是一個數組,params[0]在這里是"0",params[1]是"第1項"
        //Adapter.notifyDataSetChanged();
        //執行添加后不能調用 Adapter.notifyDataSetChanged()更新UI,因為與UI不是同線程
        //下面的onPostExecute方法會在doBackground執行后由UI線程調用
      return null;
    }
    @Override
    protected void onPostExecute(String result) {
      // TODO Auto-generated method stub
      super.onPostExecute(result);
      Adapter.notifyDataSetChanged();
      //執行完畢,更新UI
    }
 }
 private OnItemClickListener lvLis=new OnItemClickListener(){
    @Override
    public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
        long arg3) {
      //點擊條目時觸發
      //arg2即為點中項的位置
      setTitle(String.valueOf(arr.get(arg2)));
    }
 };
}

打包的源代碼中有錯誤,Adapter.notifyDataSetChanged();在doInBackground中,請作相應修改,感謝同學提醒。

完整實例代碼代碼點擊此處本站下載

希望本文所述對大家Android程序設計有所幫助。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲国产成人av | 一区二区三区在线播放 | 久久夜夜| 伊人久久综合影院 | 91丝袜 | 欧美怡红院视频一区二区三区 | av成人免费| 亚洲精品三级 | 日本国产欧美 | 久久久久久久久久久久免费 | 亚洲伊人久久综合 | 久久亚洲综合 | 免费又黄又爽又色的视频 | 最新国产精品精品视频 | 免费在线看黄 | 日韩中文字幕无码一区二区三区 | 成人在线一区二区 | 亚洲免费在线观看 | 欧美日韩一区二区三区不卡视频 | 欧美日韩六区 | 黄色欧美视频 | 欧美激情一区二区三级高清视频 | 婷婷激情五月 | 国产成人毛片 | 久久福利电影 | 一区二区在线 | 天天天操| 欧美中文字幕一区二区 | 97久久超碰 | 日韩欧美精品一区二区三区 | 伊人草| 北条麻妃一区二区三区在线观看 | 中文字幕av第一页 | 成人精品视频免费 | 伊人久久一区 | 国产亚洲欧美一区 | 99久久免费精品国产男女性高好 | 97久久超碰 | 欧美久久久| 亚洲成人一区二区在线观看 | 日韩在线短视频 |