안드로이드 개발 질문/답변
(글 수 45,052)
해당 layout에는 ImageButton 3개가 있습니다.
눈에 보이는것은 생각대로 구현이 되었지만,
그 안에 기능이 먹히질 안네요.
예를들어 ImageButton 하나(↓)를 클릭하면 내려오도록 하는 동시에
해당 버튼이 동일한 위치에 있는 (↑)인 버튼으로 바뀌는것은 됩니다.
하지만, 내려온 상태에서 다시 ↑인 이미지를 클릭하면 올라가야 하는데
먹통이네요...
이상한건 내려오기전 ↓가 있는 위치를 누르면 바로 올라가버립니다.
결국 화면은 원하는데로 되었지만, 기능은 안되는것 같습니다.
당연히 될줄 알았는데..ㅠ.ㅠ
down을 위한 menu_move_up.xml파일
up을 위한 menu_move_down.xml파일
눈에 보이는것은 생각대로 구현이 되었지만,
그 안에 기능이 먹히질 안네요.
예를들어 ImageButton 하나(↓)를 클릭하면 내려오도록 하는 동시에
해당 버튼이 동일한 위치에 있는 (↑)인 버튼으로 바뀌는것은 됩니다.
하지만, 내려온 상태에서 다시 ↑인 이미지를 클릭하면 올라가야 하는데
먹통이네요...
이상한건 내려오기전 ↓가 있는 위치를 누르면 바로 올라가버립니다.
결국 화면은 원하는데로 되었지만, 기능은 안되는것 같습니다.
당연히 될줄 알았는데..ㅠ.ㅠ
down을 위한 menu_move_up.xml파일
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:toYDelta="34%" android:fillAfter="true" android:duration="5000"/> </set>
up을 위한 menu_move_down.xml파일
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:toYDelta="0%" android:fillAfter="true" android:duration="5000"/> </set>
java 소스 (↓ 버튼을 눌렀을 때 소스)
Animation an = AnimationUtils.loadAnimation(StockTrade.this, R.anim.menu_move_down); an.setFillAfter(true); top_menu_test.setVisibility(View.INVISIBLE); top_menu_test1.setVisibility(View.VISIBLE); stocktrade_menu_layout.startAnimation(an);
제 경험으론 animation 으로 view 를 옮기더라도, 기존의 rect 는 그대로 유지되던걸로 기억됩니다.
그래서 저는 애니메이션 구현할때, click 가 들어오면, view 를 invisible 시켜서 미리 이동시켜놓고, 애니메이션을
fromYdelta 를 -100% toYdelta 를 0 으로 주고난뒤, view 를 다시 visible 시켜서 구현했습니다.