'jfeinstein10'에 해당되는 글 1건
- 2014.01.20 [android]Sliding Menu 메뉴 돌려보기(jfeinstein10오픈소스) 8
안녕하세요.
앱을 개발하다가 페이스북같은 슬라이드 메뉴를 구현하고 싶었는데,
참고할 만한 오픈소스가 jfeintsein10이라는 소스가 굉장히 유명하더군요.
그래서 참고하고 싶었는데, 예제만 돌리는데 정말 힘들었습니다.
혹여나 저같은 분들이 있을까봐 포스팅합니다.
먼저 이 예제파일을 실행하기 위해서는 두가지를 다운 받아야합니다.
1. jfeinstein10 오픈소스
우리가 사용하려고 하는 오픈소스죠.
https://github.com/jfeinstein10/SlidingMenu
2. ActionBarSherlock
저도 자세한건 모르겠으나 위의 오픈소스가 이걸 사용하더군요.
다운 받은 zip들은 압축을 풀어줍니다.
이제 이클립스를 키고,
[NEW] - [other] - [Android] - [Android Project from Existing Code]를 선택
압축 풀린 Slidingmenu폴더를 선택하면
이런 식으로 나올텐데요.
두개다 추가하면 됩니다. 이때 밑에 Copyprojects into workspace는 꼭 체크해주세요.
이걸 체크해야 복사해서 추가하기때문에 원본은 그대로 있습니다.
같은 방법으로 ActionBar도 추가해보면
이런 식으로 뜹니다.
이때 다른 프로젝트들은 다 필요 없으니까 첫번째 프로젝트(actionbarsherlock)만 체크하고,
나머지는 전부 풀어줍니다.
마찬가지로 Copy projects into workspace는 체크해줍니다.
자 여기까지 하셨다면 아마 이런 결과 일겁니다.
자 이제 할 일은 서로 엮어주고 고쳐주면 됩니다.
구조는 이런식입니다.
actionbarsherlock은 라이브러리화 되서 library가 참고하고,
library 또한 라이브러리화 되서 ExamplelistActivity가 참고하는 구조입니다.
actionbarsherlock프로젝트와 library프로젝트의 properties로 들어가 Islibrary를 체크해줍니다.
(아마 되있을겁니다.)
다음, library프로젝트 Properties에서 Add버튼을 누른 후 actionbarsherlock을 추가시킵니다.
그러면 Console창에
Found 2 versions of android-support-v4.jar in the dependency list,~~~
같은 어마무시한 경고가 뜨는데 이것은 android-support-v4.jar라는 파일이 둘 다 있어서 중복된다는 소리입니다.
library프로젝트의 libs폴더에 있는 android-support-v4.jar파일을 삭제 합니다.
다음 library프로젝트의 SlidingFragmentActivity를 찾아서,
public class SlidingFragmentActivity extends FragmentActivity implements SlidingActivityBase {
이부분을
public class SlidingFragmentActivity extends SherlockFragmentActivity implements SlidingActivityBase {
으로 바꿉니다.
그럼 아마 모든 에러는 사라질 것이고
ExampleListActivity프로젝트를 실행하면,
이 화면을 보실 수 있을 겁니다.
ps. Unable to resolve target 'android-16' 류의 경고가 뜬다면 Properties에서 Buildtarget을 GoogleAPIs로 바꿔보세요.
다음에는 이 코드를 이용해서 실질적으로 사용하는 예제 소스를 준비하겠습니다.
'Programming > Android' 카테고리의 다른 글
예전처럼 프로젝트 생성하기(킷캣SDK에서 프로젝트 생성하기) (2) | 2014.07.01 |
---|---|
[android] SlidingMenu와 Fragment를 이용해 기본 메뉴 구조 구현하기(jfeinstein10오픈소스) (21) | 2014.02.06 |
TouchEvent 중 Action_Down은 되는데 Action_Move가 안될때 (0) | 2013.07.31 |
CustomVIew(MyView)에서 TouchEvent(Move, Zoom in/out) (0) | 2013.07.31 |
Unable to resolve target 'android-8' 에러 났을때 (0) | 2013.06.22 |