cursor

目標:在指定區域上,偵測手指觸碰位置並疊一張圖標記位置

想法:

用 Button 配合 Button.OnTouchListener 上偵測觸控位置,接著需要在 Button 上疊一張圖標記 Cursor 座標位置,接著偵測 MotionEvent 的事件,動態將 Cursor 位置更新。

實作:

採用 RelativeLayout,裡頭擺上一個 Button (fill_parent) 跟 ImageButton (wrap_content),接著程式方面,替 Button 增加 setOnTouchListener 監控,並在 MotionEvent.ACTION_DOWN 和 MotionEvent.ACTION_MOVE 更新 ImageButton 位置 ( mImageButton.layout((int)event.getX(0), (int)event.getY(0), (int)event.getX(0)+mImageButton.getWidth(), (int)event.getY(0)+mImageButton.getHeight()); )

layout:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="300dp"
       android:layout_height="300dp"
       android:layout_gravity="center">

       <Button
              android:layout_width="fill_parent"
              android:layout_height="fill_parent"
              android:text="Button"/>

       <ImageButton
              android:contentDescription="@null"
              android:background="@null"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:src="@drawable/cursor"
              android:layout_alignParentBottom="true"
              android:layout_alignParentRight="true"/>
</RelativeLayout>

收工


, , , ,

changyy 發表在 痞客邦 PIXNET 留言(0) 人氣()