이 기사는 참조를 위해 ArrayCopy를 사용하여 멀티 클릭 이벤트를 구현하는 세 가지 방법을 공유했습니다. 특정 내용은 다음과 같습니다
1. 더블 클릭 이벤트 구현
우리는 두 클릭 사이의 간격이 500 밀리 초 이내의 이중 클릭 이벤트이며,이 값은 마음대로 제한 될 수 있다고 규정합니다.
bt_click.setonclicklistener (new onclicklistener () {@override public void onclick (view v) {if (starttime! = 0) {long endtime = system.currenttimemillis (); if (endtime-starttime <500) {toast.maketext (getApplicationContext (getApplicationContext (getApplicationContext)); = System.CurrentTimeMillis ();2. ArrayCopy 사용
ArrayCopy는 어레이 복사에 사용되는 기능입니다
먼저 Arraycopy의 작은 예를 살펴 보겠습니다
// 다른 길이의 두 배열 int src [] = {1,2,3,4,5,6}; int dest [] = {10,9,8,7,6,5,4,3,2,1}; // 배열 SRC의 4 가지 요소를 배열 dest System.ArrayCopy (SRC, 1, DEST, 2,4)에 복사합니다. // 출력 배열 dest for (int i = 0; i <10; i ++) {system.out.println (dest [i]); }출력 결과
결과에서 우리는 ArrayCopy의 사용을 볼 수 있습니다.
매개 변수 :
1. 원본 배열 (배열 복사)
2. 원래 배열의 사본 시작 위치의 인덱스 값
3. 대상 배열 (원래 배열의 데이터 - 복사> 대상 배열)
4. 대상 배열의 시작 인덱스 위치는 값을 허용합니다.
5. 길이를 복사합니다
-
3. 다중 스트라이크 이벤트 구현
Private Long [] mhits = New Long [3]; bt_many_click.setonclicklistener (new onclicklistener () {@override public void onclick (view v) {system.arraycopy (mhits, 1, mhits, 0, mhits.length-1); mhits [mhits.length-1] = SystemClock.uptimemillis (); if (mhits [mhits.length-1] -mhits [0] <500) {// 3 번의 클릭 이벤트 토스트에 응답합니다.길이 3 (즉, 다중 적중) 인 MHITS 어레이, 마지막 비트 MHITS [MHITS.LENGTH-1]는 각 클릭 시간을 저장합니다.
클릭당 한 번 ArrayCopy
마지막 클릭과 첫 클릭 사이의 시간 간격이 MHITS [0]에 값을 갖는 후 결정되면 시간이 제한된 시간보다 적은 경우 3 타점으로 결정됩니다.
위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.