게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
[Android] Animation을 이용한 슬라이드 메뉴 포커스문제
게시물ID : programmer_8459짧은주소 복사하기
작성자 : 릴라강
추천 : 0
조회수 : 3653회
댓글수 : 1개
등록시간 : 2015/03/06 11:26:10
옵션
  • 본인삭제금지
특정 EditText를 터치하면 오른쪽에서 슬라이딩 메뉴가 열리면서
새로운 검색창이 나오는 형태의 액티비티를 만들었습니다.

슬라이딩까지는 성공했는데... 슬라이딩 된 메뉴의 에디트텍스트에 포커싱이 되면
자동으로 다시 원상복귀가 되네요. 혹시 문제가 뭔지 알수 있을까요?


------ 뷰 초기화 부분

// 레이아웃 초기화
mainFrame = (LinearLayout)findViewById(R.id.detailMainFrame);
subFrame = (LinearLayout)findViewById(R.id.detailSubFrame);
// 처음에는 서브프레이 터치 안되도록 함
enableDisableViewGroup(subFrame, false);
// 각 필드 초기화
buttonBackHome = (ImageButton)findViewById(R.id.button_backHome);
buttonBackPage = (ImageButton)findViewById(R.id.button_backPage);
fieldInitialize();


------ 이벤트 리스너 부분

searchStringView.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// 더미프레임 생성
//dummyFrame = new LinearLayout(GoodsDetail.this);
//dummyFrame.setLayoutParams(new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
//dummyFrame.setBackgroundColor(Color.parseColor("#55000000"));
//detailFrame.addView(dummyFrame);
// 애니메이션 객체 초기화
frameW = mainFrame.getWidth();
frameH = mainFrame.getHeight();
int quater = (int)(frameW * 0.25);
slideOpen = new TranslateAnimation(0, quater * -3, 0, 0);
initSlideOpen(quater * -3, quater);
}
});





------ 애니메이션 구현부분

private void initSlideOpen(final int left, final int right){
// 서브프레임 패딩설정
subFrame.setPadding(right, 0, 0, 0);
slideOpen.setDuration(250);
slideOpen.setFillAfter(true);
slideOpen.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {}
@Override
public void onAnimationRepeat(Animation animation) {}
@Override
public void onAnimationEnd(Animation animation) {
//dummyFrame.layout(left, 0, right, frameH);
mainFrame.layout(left, 0, right, frameH);
//dummyFrame.clearAnimation();
mainFrame.clearAnimation();
enableDisableViewGroup(subFrame, true);
}
});
mainFrame.startAnimation(slideOpen);
}






소스는 위와 같습니다. 아래는 결과 화면입니다.
(부득이하게 일부 컨텐츠는 모자이크 처리하였습니다. 죄송합니다. ㅠㅠ)

Screenshot_2015-03-06-11-19-55.png

초기화면은 위와 같이 선택한 제품의 디테일한 정보를 보는 부분이고
중간에 있는 [전체보기] 버튼 옆의 텍스트박스를 터치하면 아래와 같이 슬라이드가 됩니다.


Screenshot_2015-03-06-11-20-05.png

슬라이드 된 화면입니다. 여기서 또다시 특정 목록을 불러와서 선택할수 있게 해야되는데 위에 보이는
[검색어를 입력하세요] 부분 (투명한 EditText입니다)을 터치해서 포커스를 주게되면 키패드가 뜨긴 뜨
는데.....



Screenshot_2015-03-06-11-20-12.png

이처럼 원래 화면으로 돌아와버립니다.
으아아아아아앙ㄱ ㅠㅠ



아직 슬라이드가 닫히는 화면은 구성하지 않았기때문에
그게 실행되거나 하는건 아니고 아마 애니메이션쪽이랑 무슨 관련이 있지 않나 추측은 해보는데
솔직히 잘 모르겠습니다. ㅠㅠ


고수님들의 조언 부탁드립니다.




전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호