시도해보십시오. 그것은 나에게 맞는 것입니다 :
public static OnTouchListener loadContainerOnTouchListener() {
OnTouchListener listener = new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
LinearLayout layout = (LinearLayout)v;
for(int i =0; i< layout.getChildCount(); i++)
{
View view = layout.getChildAt(i);
Rect outRect = new Rect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom());
if(outRect.contains((int)event.getX(), (int)event.getY()))
{
Log.d(this.getClass().getName(), String.format("Over view.id[%d]", view.getId()));
}
}
}
기억 : 당신이 설정하는 수신기는 그리드, 상대, 선형이어야합니다. , 아니라면 클릭 = "true"를 바로 아래 조치를 생산 : = 포커스 "true"로 안드로이드 :
LinearLayout layout = findViewById(R.id.yourlayoutid);
layout.setOnTouchListener(HelperClass.loadContainerOnTouchListener());
수정, 나는 ACTION_DOWN에 플래그를 설정하고 플래그가 설정 될 때까지 것을 사용하는 솔루션을 선호 ACTION_UP에 거짓으로 – WarrenFaith
정말로 감사합니다. – daliz
나는 이것이 모든 곳에서 언급되는 것을 본다. 그러나 그것은 나에게 어울리지 않는 것처럼 보인다. 계속 누르고 있으면 계속 ACTION_MOVE 이벤트가 발생하지 않습니다. ACTION_MOVE는 내 손가락을 한쪽이나 다른쪽으로 기울이면 트리거되는 것 같습니다. 전화를 덜 민감하게 유지하는 설정 일 수 있습니까? – clusterflux