【yolov5程式碼解讀】資料增量之augment_hsv
阿新 • • 發佈:2021-01-24
切換縮放圖片
切換功能
1.匯入3張圖片到drawable
2.編寫activity_main.xml
3.編寫MainActivity
package net.zxj.hwork14;
import android.os.Bundle;
import android.util.Log;
import android.view.GestureDetector;
import android.view.MotionEvent;
import android.widget.LinearLayout;
import androidx.appcompat.app.AppCompatActivity;
public class MainActivity extends AppCompatActivity {
private GestureDetector detector; //手勢偵測器
private int [] imgIds; //影象資源識別符號陣列
private int imgIndex; //影象索引,反映在影象資源識別符號陣列中的位置
private LinearLayout root;//根線性佈局
private final static int IMG_COUNT = 3; //影象總數
private final static String TAG = “hwork14”; //定義程式標記
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //通過資源識別符號獲取控制元件例項 root = findViewById(R.id.root); //初始化影象資源識別符號陣列 imgIds = new int[IMG_COUNT]; for(int i=0; i< IMG_COUNT;i++){ imgIds[i] = getResources().getIdentifier( "img" + (i+1), //識別符號名稱 "drawable", //定義型別 "net.zxj.hwork14" //定義包名 ); } //設定根佈局可以獲得焦點 root.setFocusable(true); //讓根佈局獲取焦點 root.requestFocus(); detector = new GestureDetector(new GestureDetector.OnGestureListener() { @Override public boolean onDown(MotionEvent e) { Log.i(TAG,"onDown"); return false; } @Override public void onShowPress(MotionEvent e) { Log.i(TAG,"onShowPress"); } @Override public boolean onSingleTapUp(MotionEvent e) { Log.i(TAG,"onSingleTapUp"); return false; } @Override public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX, float distanceY) { Log.i(TAG,"onScroll"); return false; } @Override public void onLongPress(MotionEvent e) { Log.i(TAG,"onLongPress"); } @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { Log.i(TAG,"onFling"); //手勢往左滑動20個畫素,影象切換到下一張 if (e2.getX() < e1.getX() -20){ if (imgIndex < IMG_COUNT -1){ imgIndex ++; }else { imgIndex = 0; } } //手勢往右滑20個畫素,影象切換到上一張 if (e2.getX() > e1.getX() +20){ if (imgIndex>0){ imgIndex--; }else{ imgIndex = IMG_COUNT -1; } } //要根據變化之後影象索引更新佈局的背景圖片 root.setBackgroundResource(imgIds[imgIndex]); return false; } }); } //將視窗的觸控事件交給手勢偵測器來處理 @Override public boolean onTouchEvent(MotionEvent event) { return detector.onTouchEvent(event); }
}