2016-07-25 1 views
0

좋아, 그럼 ...애니메이션을 적용 할 때 RelativeLayout의 무결성을 유지하는 우아한 방법은 무엇입니까?

나는 그것에 대해 상당한 양의 질문이 있지만 작동하지 않았거나 실제로 힘든 방법으로 수정되었음을 알고 있습니다. 오, 그 일이 제 2 일이에요, 제발, 제 사과에 동의하고 쳇 하세를 도와주세요.

조각 아래에 단추가 있고 그 아래에 RecyclerView가 있습니다. 단추를 누르면 사라지고 텍스트 필드가있는 새로운 RelativeLayout이 위로부터 슬라이드됩니다. animateLayoutChanges = "true"로 만들고 싶지 않습니다. 정확히 내가 의도 한 것이 아니기 때문에, 배우기보다는 배우기를 원합니다.

나는 widget.animate()로 번역하려고 시도했다 ... 그 결과 레이아웃의 나머지 부분이 멈춰있을 때 위젯 하나가 방금 던져졌다. 그게 내가하려는 의도가 아니야.

"setFillAfter/Before"속성이 있기 때문에 "new TranslateAnimation"도 만들려고했지만 그게 도움이되지 못했습니다.

내가 시도한 것은 레이아웃을 어떻게해서든지 여백과 물건을 추가하는 것이 었습니다. (더 이상 기억하지 않고, 지금은 알아 내려고 노력하고 있습니다.) 미안합니다. 질문.

하지만 그 중 아무 것도 작동하지 않았습니다. 나는 지금 코드를 포함하지 않는다. 왜냐하면 나는 이미 수십개의 다른 방법으로 그것을 시도했기 때문이다.

위젯을 이동하고 나머지를 이동하는 방법을 알려주시겠습니까? 가능한가?

나는 setVisibility, animateLayoutChanges 및 애니메이션 조합을 사용하여 이미 사용하고 있지만, 아기 오리처럼 거대하고 더러워졌습니다.

편집 : 오, 거의 잊어 버렸습니다. 또 다른 문제점은 위젯을 움직이거나 움직일 때 렌더링 글꼴 만 변경되지만 실제 위치는 동일하게 유지된다는 것입니다 (예 : onclicklistener)

+1

"위젯을 이동하고 나머지 부분을 함께 이동하는 방법"- 위젯이 포함 된'ViewGroup'에 애니메이션을 적용하십시오. – PPartisan

+0

흠 ... 그래,하지만 봐. 나는 위젯을 함께 옮기고 싶지 않아. 첫 번째 단계에서 버튼과 RecyclerView가 포함 된 모든 조각입니다. 나는 너를 이해하지 못했을 지 모르지만 나는 viewgroup으로 어떻게해야하는지 모르겠다. 위로부터 준비된 RelativeLayout을 슬라이드하여 Recyclerview를 아래로 내리고 싶습니다. – Nocri

+0

Fragment Transition 애니메이션이 적합할까요? [어떻게 보이는지 예제가 있습니다] (https://youtu.be/XT3pq-ppCM8) – PPartisan

답변

0

다시 말해서.

나는 그것을 이렇게했다 - 말하자면 - 나는 버튼을 밀어서 제거하려고한다. 그래서 나는 그 애니메이션과 모든 다른 위젯 (오른쪽, 나는 ViewGroup을 만들 수있다)을 애니매이션에 리스너를 넣고 "onAnimationEnd"에 모든 애니메이션을 지우고 가시성을 GONE으로 설정한다. animateLayoutChanges를 false로 설정해야합니다.

여전히 원하는 것은 아니므로, 다른 사람, 더 나은 방법을 보여주는 사람에게 빚을지게됩니다.

관련 문제