2012-12-14 7 views
1

어느 한 내가 세 가지 이미지 A, B 및 C 이이 문제를 내가 디자인 FrameLayout이를 사용하고 ,터치 이벤트는

을 도와 줄 수 슬라이드 후 이전 지역에 FrameLayout이에 이미지 뷰와 touhcable 이벤트 화재 남아 나는 다음과 같은 디자인이 필요하다 : - 이미지 B는 A 뒤에 있고 이미지는 onTouch 이미지 C는 이미지 B slideDown에서 A의 뒷면에 있어야하며 클릭 할 수 있어야한다. 번역 애니메이션으로 끝내고 이미지의 오버레이에 FrameLayout을 사용했습니다.

문제는,

1) B 화상을 클릭하고 심지어는 (A)의이면에, 그것을 클릭하고 표시되지 않더라도 그 온 클릭 메소드를 실행 얻으면된다. 그래서 그것은 배경에있을 때 클릭해서는 안됩니다.

2) 내가 이미지 C를 터치하면 A의 뒷면에서 B 이미지 SlideDown, B의 클릭 가능 영역이 위로부터 이동하지 않으며 이전에 B가 SlideDown 이전에 있던 이전 영역에 남습니다.

이미지 C가 클릭되고 터치 할 수있는 영역도 이동해야 할 때 A의 뒷면에서 이미지 B를 슬라이드 업 및 슬라이드해야합니다.

TranslateAnimation t =new TranslateAnimation(0, 0,0,35); 
t.setDuration(400); 
t.setFillAfter(true); 
t.setInterpolator(new LinearInterpolator()); 
menuSlideBgId.startAnimation(t); 
inFram.startAnimation(t);ImageView shareMenuId = (ImageView) findViewById(R.id.bubbleMenu); 
shareMenuId.setOnClickListener(new OnClickListener() { 

      @Override 
      public void onClick(View v) { 
       // TODO Auto-generated method stub 
       Toast.makeText(getApplicationContext(), "bub", 5000).show(); 
      } 
     }); 

답변

1

ObjectAnimator를 사용하여 문제가 해결되었습니다.

+0

코드 힌트를 제공해 주시겠습니까? – Andy

0

나는이 예제는 버튼입니다 how-to-disable-button-click을 보일 것입니다하지만 당신은 imageViews이 당신을 도움이되기를 바랍니다에 대한 동일한 기능을 수행 할 수 있다고 생각합니다.

+0

두 번째가 아니라 첫 번째 문제가 해결되며 사용 가능 영역은 이미지 슬라이드로 이동해야합니다. 답변 감사합니다. – SML

+0

두 번째 문제는 이미지가 움직이지만 이미지의 감동할 수있는 영역이 아니라는 것을 이해하는 것은 이상합니다. –

+0

예, 이미지가 이동하고 터치 할 수있는 영역은 아래로 이동해도 동일하게 유지됩니다. – SML