2013-12-18 4 views
0

버튼을 GridLayout에 넣으면 터치 응답이 시각적으로 정상적으로 다릅니다. 빠른 터치에서는 기본 상태에서 눌린 상태로 변경하는 것이 정상적인 것처럼 보였습니다. 그러나 길게 터치하면 눌린 버튼 드로어 블이 표시되기 전에 매우 눈에 띄는 지연이 있습니다. 왜 그런지 알아?Android GridLayout의 느린 버튼 응답

단추를 GridLayout 외부로 이동하려고 시도한 다음 정상적으로 다시 작동합니다. 즉시 눌린 상태로 변경됩니다. 나는 또한 android:longClickable="false" 시도했지만 그 문제를 해결하지 않았다.

<GridLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

    <Button 
     android:layout_width="80dp" 
     android:layout_height="80dp" 
     android:text="1" 
     android:textStyle="bold" 
     android:textSize="40dp" 
     android:background="@drawable/num_button"/> <!-- Same result without this drawable--> 
</GridLayout> 

내 테스트 장치가 킷캣을 실행하는 구글 넥서스 10 :

여기 내 간단한 테스트입니다.

+0

이 당신의 드로어 블의 크기와 관련이있을 수 :

당신은 버튼을 무시하고 다음 코드를 추가해야합니다. 그들은 얼마나 큰가요? – OcuS

+0

난 그냥 내 사용자 정의 배경을 제거하려고했지만 느린 응답이 동일했습니다. – Guppel

답변

0

나는 동일한 문제가 있었지만 비슷한 게시물에 수정 사항이 있으므로 여기에 있습니다.

public boolean onTouchEvent (MotionEvent event) 
{ 
    if (event.getAction() == MotionEvent.ACTION_DOWN) setPressed(true); 
    return super.onTouchEvent(event); 
} 
+0

감사합니다. 언급 한 다른 게시물로 연결되는 링크가 있습니까? – Guppel

+0

내가 직접 찾은 것 같아요. 여기 : http://stackoverflow.com/questions/5040303/how-can-i-make-a-button-more-responsive – Guppel