回答編集履歴

1

回答内容の追記

2016/03/11 12:41

投稿

Aeona
Aeona

スコア396

test CHANGED
@@ -1,3 +1,87 @@
1
+ 追記しました。
2
+
3
+
4
+
5
+ ```java
6
+
7
+ public class MainActivity extends AppCompatActivity {
8
+
9
+
10
+
11
+ GestureDetector mGestureDetector;
12
+
13
+ @Override
14
+
15
+ protected void onCreate(Bundle savedInstanceState) {
16
+
17
+ super.onCreate(savedInstanceState);
18
+
19
+ setContentView(R.layout.activity_main);
20
+
21
+
22
+
23
+ // タップなしでonTouchEventを発生させる
24
+
25
+ // デバッグなどで使用
26
+
27
+ long downTime = SystemClock.uptimeMillis();
28
+
29
+ long eventTime = SystemClock.uptimeMillis() + 100;
30
+
31
+ MotionEvent event = MotionEvent.obtain(
32
+
33
+ downTime, eventTime, MotionEvent.ACTION_DOWN, 300, 300, 0);
34
+
35
+ this.onTouchEvent(event);
36
+
37
+ }
38
+
39
+
40
+
41
+ @Override
42
+
43
+ public boolean onTouchEvent(MotionEvent event) {
44
+
45
+
46
+
47
+ float posX = event.getX();
48
+
49
+ float posY = event.getY();
50
+
51
+
52
+
53
+ Toast.makeText(getApplication(),
54
+
55
+ "タップしたョ\n"
56
+
57
+ + "座標( X:" + String.valueOf(posX).toString()
58
+
59
+ + ", Y:" + String.valueOf(posY).toString() + ")",
60
+
61
+ Toast.LENGTH_LONG).show();
62
+
63
+
64
+
65
+ return super.onTouchEvent(event);
66
+
67
+ }
68
+
69
+ }
70
+
71
+ ```
72
+
73
+
74
+
75
+ ```MotionEvent.obtain()```が見慣れないメソッドだったので調べてみました。
76
+
77
+ 普通は使用しなさそうなメソッドですね。
78
+
79
+ 動作するように組んでみたので宜しければどうぞ
80
+
81
+
82
+
83
+ ---
84
+
1
85
  Androidはjavaで作成できますが、PC上で実行するのと背後にある環境が全く違います。
2
86
 
3
87