閱讀APP原始碼,瞭解Android studio觸控事件,切換圖片
閱讀APP原始碼,瞭解Android studio觸控事件,切換圖片
xml程式碼:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" xmlns:app=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity10"> <ImageView android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="fitXY" android:id="@+id/image"/> </LinearLayout>
java程式碼:
package com.example.myapplication; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.widget.ImageView; import android.widget.Toast; public class MainActivity10 extends AppCompatActivity { // 定義陣列,用來訪問圖片資源 private int[] imgs = {R.drawable.one,R.drawable.two,R.drawable.three,R.drawable.four}; private ImageView image; // 觸控開始和結束位置值 private float startx=0.0f,endx=0.0f; // 圖片預設索引值 int count = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main10); image = findViewById(R.id.image); // 初始化第一張圖片 image.setImageResource(imgs[count]); // 給圖片設定觸控事件 image.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View view, MotionEvent motionEvent) { // 獲取水平方向的值 float x = motionEvent.getX(); // 獲取觸控的初始位置 if(motionEvent.getAction()==MotionEvent.ACTION_DOWN){ startx = x; } // 獲取觸控的結束位置 if(motionEvent.getAction()==motionEvent.ACTION_UP){ endx = x; // 判斷滑動的距離是否超過100 if(Math.abs(startx-endx) > 100){ if(startx > endx){ // 向左滑動 // 判斷圖片索引是否等於3 if (count == 3){ Toast.makeText(MainActivity10.this,"已經是最後一張啦",Toast.LENGTH_SHORT).show(); } else { // 圖片索引+1 image.setImageResource(imgs[++count]); } } else { // 向右滑動 // 判斷圖片索引是否等於0 if (count == 0){ Toast.makeText(MainActivity10.this,"已經是第一張啦",Toast.LENGTH_SHORT).show(); } else { // 圖片索引-1 image.setImageResource(imgs[--count]); } } } } return true; } }); } }
以上就是 閱讀APP原始碼,瞭解Android studio觸控事件,切換圖片,更多內容歡迎關注之後的文章
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2846470/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python3 原始碼閱讀-深入瞭解Python GILPython原始碼
- 直播app開發搭建,Android studio 圖片壓縮APPAndroid
- ThinkPHP6 原始碼閱讀(十):事件PHP原始碼事件
- Qt原始碼閱讀(四) 事件迴圈QT原始碼事件
- android圖片裁剪拼接實現(二):觸控實現Android
- 【原始碼閱讀】AndPermission原始碼閱讀原始碼
- Android觸控事件傳遞機制Android事件
- PostgreSQL 原始碼解讀(3)- 如何閱讀原始碼SQL原始碼
- jQuery 圖片垂直切換效果詳解jQuery
- 原始碼閱讀之Activity啟動與App啟動流程 – Android 9.0原始碼APPAndroid
- 原始碼閱讀之Activity啟動與App啟動流程 - Android 9.0原始碼APPAndroid
- 通過解讀WPF觸控原始碼,分析WPF插拔裝置觸控失效的問題(問題篇)原始碼
- [譯] 瞭解 Android 的向量圖片格式:`VectorDrawable`Android
- [譯] 瞭解 Android 的向量圖片格式:VectorDrawableAndroid
- 【原始碼閱讀】Glide原始碼閱讀之with方法(一)原始碼IDE
- 【原始碼閱讀】Glide原始碼閱讀之into方法(三)原始碼IDE
- Android中觸控事件的傳遞機制Android事件
- 【Android Developers Training】 67. 響應觸控事件AndroidDeveloperAI事件
- js圖片切換例項JS
- 【詳解】ThreadPoolExecutor原始碼閱讀(三)thread原始碼
- 【詳解】ThreadPoolExecutor原始碼閱讀(二)thread原始碼
- 【詳解】ThreadPoolExecutor原始碼閱讀(一)thread原始碼
- ScrollView 觸控事件View事件
- JS觸控事件JS事件
- [閱讀JavaCookBook]瞭解MavenJavaMaven
- 【原始碼閱讀】Glide原始碼閱讀之load方法(二)原始碼IDE
- 圖片轉換文字appAPP
- Android Studio匯入原始碼Android原始碼
- [譯] 從 Android Studio 切換至 D8 dexerAndroid
- Caddy 原始碼閱讀(一)Run 詳解原始碼
- Android Studio3.3你瞭解多少?Android
- create-react-app原始碼解讀ReactAPP原始碼
- UcOs-III 原始碼閱讀: os_cfg_app.c原始碼APP
- ReactorKit原始碼閱讀React原始碼
- Vollery原始碼閱讀(—)原始碼
- NGINX原始碼閱讀Nginx原始碼
- ThreadLocal原始碼閱讀thread原始碼
- 原始碼閱讀-HashMap原始碼HashMap