iT邦幫忙

2023 iThome 鐵人賽

DAY 29
0
Mobile Development

Android Studio初學系列 第 29

Android Studio初學 DAY29 onTouch事件

  • 分享至 

  • xImage
  •  

當您想要在Android應用程序中捕獲和處理觸摸事件時,onTouch 事件處理程序是一個很有用的工具。這個事件允許您監聽並對觸摸手勢(如點擊、滑動和縮放)作出反應,今天將做一個簡單的onTouch事件來實現基本的觸摸事件處理

XML布局


<ImageView
    android:id="@+id/myImageView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:src="@drawable/my_image" />

Activity

public class TouchEventActivity extends AppCompatActivity {

    private ImageView myImageView;

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_touch_event);

        myImageView = findViewById(R.id.myImageView);

        myImageView.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                // 在這裡處理觸摸事件
                float x = event.getX();
                float y = event.getY();

                switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN:
                        // 按下事件
                        break;
                    case MotionEvent.ACTION_MOVE:
                        // 移動事件
                        break;
                    case MotionEvent.ACTION_UP:
                        // 抬起事件
                        break;
                }
                return true; // 返回 true 表示已處理觸摸事件
            }
        });
    }
}

在上面的程式碼中,我們使用 setOnTouchListener 方法為 ImageView 設置了觸摸事件監聽器,然後在onTouch方法中,我們根據觸摸事件的類型(按下、移動、抬起等)執行不同的操作

在 onTouch 方法中,我們使用MotionEvent對象來獲取有關觸摸事件的詳細信息,例如觸摸的位置(getX 和 getY 方法)、動作類型(getAction 方法)等,根據需求,可以在每個case子句中執行不同的操作。

不知不覺也到了29天,明天就是最後一天了,謝謝大家/images/emoticon/emoticon07.gif


上一篇
Android Studio初學 DAY28 ToggleButton
下一篇
Android Studio初學 DAY30 結語
系列文
Android Studio初學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言