0

제스처를 사용하여이 이미지처럼 끌 수 있습니까? 내 말은, 틱 마크로 드래그해야한다는 뜻입니다. 따라서이 onClickListener에 대해 사용해야합니다. 그것이 실행 된 후, 디스플레이 부분에서 다른 화면을 마지막으로 열 수 있어야합니다.제스처를 사용하여 어떻게 끌 수 있습니까?

손을 사용할 때는 눈금 표시를 넣으면 특정 방법을 호출 할 수 있어야합니다.

제스처를 사용하여 코드를 작성하고 싶습니다. 이미지 아래에서 이것을 수행 할 때 수행하거나 드래그 할 수 있어야합니다. 제스처에서 기능이 어떻게 작동하며 코드를 작성해야합니까?

어떻게하면됩니까? 누구든지 나를 제안 할 수 있을까? See this "Tick" image

답변

0

나는 this question의 라인을 따라 무엇인가를 요구하고 있다고 생각합니다. 다음은 prateek-raj이 제공 한 소스 코드입니다. 덧붙여, 제공 한 샘플 체크 표시는 멋지지만 안드로이드는 이미지가 볼의 이미지인지, 체크 표시인지 또는 a squirrel holding a bazooka인지 상관하지 않으므로 아래 코드를 계속 적용 할 수 있습니다.

package com.examples.Touchmoveimage; 

import android.app.Activity; 
import android.os.Bundle; 
import android.view.MotionEvent; 
import android.view.View; 
import android.widget.ImageView; 
import android.widget.LinearLayout.LayoutParams; 

public class Touchmoveimage extends Activity { 

    int windowwidth; 
    int windowheight; 

    private LayoutParams layoutParams ; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    windowwidth = getWindowManager().getDefaultDisplay().getWidth(); 
    windowheight = getWindowManager().getDefaultDisplay().getHeight(); 
    final ImageView balls = (ImageView)findViewById(R.id.ball); 

    balls.setOnTouchListener(new View.OnTouchListener() { 

        @Override 
        public boolean onTouch(View v, MotionEvent event) { 
         LayoutParams layoutParams = (LayoutParams) balls.getLayoutParams(); 
         switch(event.getAction()) 
         { 
         case MotionEvent.ACTION_DOWN: 
                 break; 
         case MotionEvent.ACTION_MOVE: 
                 int x_cord = (int)event.getRawX(); 
                 int y_cord = (int)event.getRawY(); 

                 if(x_cord>windowwidth){x_cord=windowwidth;} 
                 if(y_cord>windowheight){y_cord=windowheight;} 

                 layoutParams.leftMargin = x_cord -25; 
                 layoutParams.topMargin = y_cord - 75; 

                 balls.setLayoutParams(layoutParams); 
                 break; 
         default: 
                 break; 
         } 
          return true; 
        } 
      }); 
} 
} 
질문의 가장 주소

,하지만 확실히 모든 그것의를. 당신도 물었다,

그것이 실행되면, 디스플레이 부분에 다른 화면 을 마지막으로 열 수 있어야합니다.

대답은 가능성이 생성자에 정의 된 새로운 활동에 텐트 오브젝트를 (생성하고 그것을 시작 포함 할 것이다. 주제 here에 좋은 튜토리얼이있다. 그것은 (스위칭 활동의 핵심을)에 가고 이 같은 일 :.

Intent k = new Intent("com.example.ActivityYouWantToGoTo"); 
startActivity(k); 

당신은 새로운 활동을 생성과 관련된 모든 단계를 통과해야합니다 (예를 매니페스트를 업데이트하는 것을 잊지 마세요.) 코드가 모두을 할 수 있도록하기 위해 (a) 체크 박스를 드래그하고 (b) 새로운 활동으로 전환하면 위의 개념을 결합해야합니다. 개체를 드래그하거나 활동을 전환하기를 원하는 상황 (예 : 한 번 드래그 한 후? 특정 위치로 끌었습니까? 등)하지만, 당신은 그 조건을 정의하고 그들이 만났을 때 새로운 활동을 호출하기를 원할 것입니다.

+0

체크 표시 제스처에 대한 질문이 아니었고 대답이 답을하지 못했습니다. – inteist

관련 문제