SDK後個不錯的執行個體
| 代碼如下 |
複製代碼 |
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); scheduler.scheduleWithFixedDelay(new runner(), 0, 1, TimeUnit.SECONDS); //或者用scheduler.scheduleAtFixedRate(new runner(),0,1, TimeUnit.SECONDS); //接著我們要實現Runnable方法,也就是準時變動現在播放圖片的ID public class runner implements Runnable { public void run() { // TODO Auto-generated method stub currIndex = (currIndex+1)%bitmapId.length; bofang.this.postInvalidate();//重新整理螢幕 } } |
Gallery 中的圖片迴圈播放圖片的實現
主要講的就是一個迴圈播放圖片的實現,我們這裡主要還是用到了arraylisy,利用arraylist來控制裡面的圖片位置,這樣就相對簡單和容易控制迴圈了,我們只要牽扯到自訂的arrayadapter還是要注意繼承getview在裡面設定一個變數參數,就可以來實現變化,這才是最關鍵的。我們來看看代碼吧:
| 代碼如下 |
複製代碼 |
public class Splash extends Activity { ArrayList objects = new ArrayList(); Gallery g; int i = 0; @Override public void onCreate(Bundle icicle) { super.onCreate(icicle); setContentView(R.layout.photos); g = (Gallery) findViewById(R.id.gallery); objects.add(getResources().getDrawable(R.drawable.icon)); objects.add(getResources().getDrawable(R.drawable.icon)); objects.add(getResources().getDrawable(R.drawable.icon)); objects.add(getResources().getDrawable(R.drawable.icon)); objects.add(getResources().getDrawable(R.drawable.icon)); objects.add(getResources().getDrawable(R.drawable.icon)); g.setAdapter(new CustomAdapter(this, objects)); g.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView arg0, View arg1, int arg2, long arg3) { Log.i(“”, “selected ” + arg2); } @Override public void onNothingSelected(AdapterView arg0) {} }); } @Override public void onBackPressed() { g.setSelection(i++); } private class CustomAdapter extends BaseAdapter { private Context mCtx; private List objects; public int getCount() { return this.objects.size(); } public Object getItem(int position) { return position; } public long getItemId(int position) { return position; } public CustomAdapter(Context context, ArrayList objects) { super(); mCtx = context; this.objects = objects; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView row = (ImageView) convertView; if (row == null) { row = new ImageView(mCtx); row.setBackgroundDrawable(objects.get(position)); } return row; } } } |
viewpager 迴圈播放圖片 本站有很多種例子了,這裡就不介紹了