切換圖片2種經常使用方式(一、子線程二、定時器)


一、在res/drawable放入須要的圖片資源android


二、res/layout界面佈局ide


代碼佈局


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"this

    xmlns:tools="http://schemas.android.com/tools"spa

    android:layout_width="match_parent"線程

    android:layout_height="match_parent"xml

    tools:context="${relativePackage}.${activityClass}" >圖片

    <ImageView資源

        android:id="@+id/imageview"it

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        />

</RelativeLayout>





==========================


三、MainActivity 類


代碼


public class MainActivity extends Activity {

  //須要切換的圖片資源

private int[] images = { R.drawable.bg01, R.drawable.bg02, R.drawable.bg03,

R.drawable.bg04, R.drawable.bg05, };

private ImageView imageView;

private int index;

Handler handler = new Handler() {

public void handleMessage(android.os.Message msg) {

switch (msg.what) {

case 1:

imageView.setImageResource(images[index++]);

if (index > 4) {

index = 0;

}

break;

}

};

};


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);


this.imageView = (ImageView) this.findViewById(R.id.imageview);

/*// 方法1 -- 使用線程的休眠來定時切換

new Thread(new Runnable() {

@Override

public void run() {

while(true){

try {

Thread.sleep(2000);

} catch (InterruptedException e) {

e.printStackTrace();

}

handler.sendEmptyMessage(1);

}

}

}).start();*/

//方法2 -- 計時器

//第一個參數 -- 計時器線程

//第二個參數 -- 從何時開始執行

//第三個參數 -- 多久執行一次

new Timer().schedule(new TimerTask() {

@Override

public void run() {

handler.sendEmptyMessage(1);

}

}, 0, 2000);

}

}

相關文章
相關標籤/搜索