ImageView가 RelativeLayout의 가운데에 정렬되어 있으며 alignedParentTop으로 전환하려고합니다. TranslateAnimation을 설정하는 데 필요한 deltaY를 얻는 방법은 무엇입니까?안드로이드가 이동하면 뷰 좌표를 얻습니다.
편집 : 나는 이미 한 일을 소개하도록 요청했습니다 때문에 , 여기에 내가 사용하고 코드입니다 :
private Animation getTranslateAnimation(final View v) {
final float yDelta = getScreenHeight() - (2 * v.getHeight());
TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 0, yDelta);
translateAnimation.setDuration(Initial.DURATION_MILLIS);
translateAnimation.setInterpolator(new AccelerateDecelerateInterpolator());
return translateAnimation;
}
이 접근 방식의 문제는 내가 보여 글고을 가지고 이 애니메이션 후에는 ImageView 바로 아래에 위치해야합니다. onAnimationEnd를 볼 수있게하는 AnimationListener를 설정했지만 새로운 위치가 아닌 원래 위치 아래에 배치합니다. 몇 가지 쉬운 방법이 있습니까 아니면 내가 PropertyAnimation 프레임 워크로 전환해야합니까?
다른 접근 방식이 많이 있습니다. 보기 (활동, 단편, 대화 상자 등)는 어디에 표시됩니까? 왼쪽 위 모퉁이가 0,0이므로 기본적인 생각은 현재 뷰 (당신이 그 위치에 머무르기를 원한다고 가정)에 대해 X를 얻고 y를 0으로 이동시키는 것입니다. 더 많은 정보를 가진 코드를 보여줄 수 있습니다. 그 동안 시도한 것을 게시 할 수 있습니까? – Rarw