国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android軟件啟動動畫及動畫結束后跳轉的實現方法

2020-04-11 11:20:58
字體:
來源:轉載
供稿:網友

本文實例講述了Android軟件啟動動畫及動畫結束后跳轉的實現方法。分享給大家供大家參考,具體如下:

自己寫了個小程序,軟件啟動時,先顯示幾張圖片,每3秒顯示一張,圖片顯示完跳轉到首頁

1. 圖片輪播使用Gallery,用法很簡單

GalleryAdapter adapter = new GalleryAdapter(this, mIds);mGallery.setAdapter(adapter);

GalleryAdapter是自定義適配器

public class GalleryAdapter extends BaseAdapter {  private Context mContext;  private int mImageHeight;  private int[] mIds;  public GalleryAdapter(Context context, int[] ids) {   this.mContext = context;   this.mIds = ids;   init();  }  private void init() {   mImageHeight = px2dip(mContext, getScreenHeight(MainActivity.this));  }  @Override  public int getCount() {   return mIds.length;  }  @Override  public Object getItem(int position) {   return position;  }  @Override  public long getItemId(int position) {   return position;  }  @Override  public View getView(int position, View convertView, ViewGroup parent) {   final ImageView imageView = new ImageView(mContext);   if (position < mIds.length) {    int imageId = mIds[position];    imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);//設置圖片居中    imageView.setLayoutParams(new Gallery.LayoutParams(      Gallery.LayoutParams.FILL_PARENT, mImageHeight));    Bitmap bitmap = readBitMap(mContext, imageId);//用節省內存的方式加載圖片,防止OOM    imageView.setImageBitmap(bitmap);    overridePendingTransition(R.anim.push_in, R.anim.push_out);//圖片切換動畫   }   return imageView;  }}

2. 設置圖片切換時間使用Timer定時器

Timer timer = new Timer();timer.schedule(task, 3000, 3000);// 每3秒切換一張圖片private TimerTask task = new TimerTask() {  @Override  public void run() {   Message message = new Message();   message.what = 0;   index = mGallery.getSelectedItemPosition();   handler.sendMessage(message);   index++;   if (index == mIds.length - 1) {    this.cancel();    MainActivity.this.finish();    Intent intent = new Intent(MainActivity.this, Test.class);    startActivity(intent);   }  }};//不能直接在task中更新UI,所以用handler向主線程發送消息private Handler handler = new Handler() {  @Override  public void handleMessage(Message msg) {   super.handleMessage(msg);   switch (msg.what) {   case 0:    mGallery.setSelection(index);    break;   default:    break;   }  }};

3. 讀取本地資源圖片

public static Bitmap readBitMap(Context context, int resId) {  BitmapFactory.Options opt = new BitmapFactory.Options();  opt.inPreferredConfig = Bitmap.Config.RGB_565;  opt.inPurgeable = true;  opt.inInputShareable = true;  // 獲取資源圖片  InputStream is = context.getResources().openRawResource(resId);  return BitmapFactory.decodeStream(is, null, opt);}

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

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 七台河市| 临清市| 盈江县| 灵山县| 榆树市| 高清| 饶平县| 山东| 额尔古纳市| 乐平市| 宝坻区| 敦煌市| 克山县| 十堰市| 苍南县| 万全县| 遂平县| 西安市| 内乡县| 永靖县| 平邑县| 黄大仙区| 莱芜市| 鄯善县| 贵港市| 连州市| 乌兰浩特市| 绩溪县| 随州市| 临沂市| 通化县| 三河市| 怀柔区| 北碚区| 永修县| 五华县| 砚山县| 永嘉县| 茶陵县| 丽江市| 时尚|