안드로이드 개발 질문/답변
(글 수 45,052)
얼마 전에 질문 드린 문제는 대충 해결 봤는데,
다른 문제가 생겼습니다:)
애니메이션을 어떻게 구성해야할 지 모르곘네요.
프레임 레이아웃으로 스크롤 위에 레이아웃 하나가 있고(mRLay, 사진에서 아래쪽 버튼들),
그 레이아웃 Height가 리스트뷰 한 항목을 가려서, 맨 밑의 아이템은 클릭 이벤트를 못받습니다.
그래서 스크롤이 맨 밑에 오면, 뷰가 사라지도록 해 보았는데, 그냥 뿅 하면서 사라지긴 좀 뭐해서 애니메이션을 넣어봤습니다.
alpha는 아무 효과 없는거고, alpha_bar는 사라지는(alpha=0으로) 효과고, reverse_alpha_bar는 생기는(alpha =0에서 1로) 효과입니다.
흐흐;; 쉽게 하자면 그냥 뿅뿅 사라지게 하고 싶은데...
아무래도 이 앱은 좀 완성도 있게 만들고 싶어서...
도움을 부탁드립니다..
온스크롤 리스너
@Override
public void onScroll(AbsListView view, int firstVisibleItem,
int visibleItemCount, int totalItemCount) {
final RelativeLayout mRLay;
mRLay = (RelativeLayout) findViewById(R.id.relativeLayout2);
if (visibleItemCount <= 9) { // 스크롤 평소(리스트에 아이템 9까지 들어갑니다)에는 비지블리티 VISIBLE로
mRLay.setVisibility(View.VISIBLE);
Animation ani = null;
ani = AnimationUtils.loadAnimation(Browser.this,
R.anim.alpha);
mRLay.startAnimation(ani);
} else if (totalItemCount > 0 // 스크롤이 맨 밑에 오면...
&& firstVisibleItem + visibleItemCount == totalItemCount) {
Animation ani = null;
ani = AnimationUtils.loadAnimation(Browser.this,
R.anim.alpha_bar);
mRLay.startAnimation(ani);
ani.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationEnd(Animation Animation) {
mRLay.setVisibility(View.GONE);
}온스크롤 리스너
@Override
public void onAnimationRepeat(Animation animation) {
}온스크롤 리스너
@Override
public void onAnimationStart(Animation animation) {
}
});온스크롤 리스너
} else { // 이도 저도 아니면
Animation ani = null;
ani = AnimationUtils.loadAnimation(Browser.this,
R.anim.reverse_alpha_bar);
mRLay.startAnimation(ani);온스크롤 리스너
ani.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationEnd(Animation Animation) {온스크롤 리스너
}
온스크롤 리스너
@Override
public void onAnimationRepeat(Animation animation) {
}온스크롤 리스너
@Override
public void onAnimationStart(Animation animation) {
mRLay.setVisibility(View.VISIBLE);
}
});
}
}이렇게 됩니다.



