본문 바로가기

전체 글

(258)
Android-ParallaxHeaderViewPager 코드공개 구글의 뉴스스텐드 앱을 보면 상단의 프로필을 나타내는영역과 하단에 리스트로 레이아웃이 배치되어 있다. 중요한점은 뷰페이저를 이용해 리스트뷰가 좌우로 제스쳐가 된다. 디자인도 그렇고 써보면 상당히 편리 하다는것을 느낄 수있다. 하지만 페이저의 좌우 위치가 맞지 않는 경우 제스쳐를 하게 되는 경우 화면이 튀는 경우를 볼 수 있는데 편리는 하지만 UI가 논리적이지 않다는 것을 볼 수 있다.예를 들어보면 2개의페이지가 있는데 한쪽은 가장 상단에 반대쪽은 가장 하단으로 이동해있는 경우 좌우페이지를 이동하게 되면 프로필영역의 크기와 위치가 애매하게 된다. 현재로서는 다른 대안이 없기때문에 아직도 수정을 보류중인것 같다. 이러한 문제점은 Airbnb에서도 어떻게 할까 많은 고민을 한것 같고, 블로그에도 잘 적혀 있다..
Eclipse, IntelliJ에서 Live Templates를 이용한 빠른 레이아웃 구성 Eclipse, IntelliJ IDE에서 Live Templates기능을 이용하여 레이아웃을 빠르게 구성하는 방법을 소개하고자 한다. Live Templates이란 기능을 통해 코드 자동완성하는것과 동일하게 사용자가 커스텀으로 구성 할 수 있다. IntelliJ IDE에서 설정 > Live Templates으로 들어가면 다음과 같이 다양한 템플릿들이 존재한다. (Eclipse도 동일) 기본적으로 많은 종류의 템플릿이 존재 하며, 하나를 선택 해보면 금방 알 수 있다. fori를 예로 들면, fori를 입력하고 탭버튼을 누르면 Texplate text가 자동으로 완성되는 설정이며 $$은 탭을 누를때 마다 이름을 위치가 이동되며 수정 하면된다. 기본 적으로 제공되는 템플릿도 반복적으로 사용하는 것들이 많이..
IntelliJ / Eclipse 단축키 출처: http://zeroturnaround.com/rebellabs/getting-started-with-intellij-idea-as-an-eclipse-user/4/
외부이미지 나인패치 적용하기 해상도가 다양한 안드로이드는 배너영역의 이미지를 폰별로 최적화 하기는 힘들다. 그래서 고안된것이 디바이스별로 다양한 배너이미지를 만들어 폰 해상도에 따라 최적화된 이미지를 내려주는 방법(애드몹)도 쓰지만 정확하게 맞추기는 힘들고 관리하기도 힘들다. 이런 문제점을 안드로이드의 나인패치기능을 통해 조금이라도 해결가능하다. 예를들면 다음과 같은 결과를 얻을 수 있다. 원본 광고 나인패치(양옆으로만 늘리기) 나인패치(4개의 영역으로 균등하기 늘리기) * 공고이미지는 저랑 아무런 관계가 없으며 예시를 위해 사용된것뿐임. 직접 구현하기 안드로이드의 나인패치 이미지를 내부 리소스뿐만 아니라 외부이미지에 대해서도 적용이 가능하다. 외부이미지인 즉, 앱 내부에 리소스가 아닌 웹URL을 통해 가져온 이미지나 폰 내부에 있..
구글 웨어러블 장치를 위한 Android Wear 공개 금일 구글은 웨어러블 장치를 위한 안드로이드 Wear이라는 운영체제 시스템을 공개했습니다. 이 시스템은 스마트워치를 중점으로 설계되었으며, 구글은 스마트워치의 인터페이스가 어떻게 작동되는지에 대해 두가지의 영상도 공개했습니다. 스마트워치는 모토로라와 LG에서 먼저 제조할 것 이며 LG는 다음분기에 출시할 것이라고 엔가젯에서 내다보고 있습니다. 이외에 삼성이나 아수스, HTC등의 파트너사에서도 제조할 것 입니다. 이 외에도 패션 브랜드가 분명히 Wear 운영체제를 사용한 스마트워치를 내 놓을 것이라고 생각됩니다. 몇 가지 주요기능중 가장 중점을 둘것은 피트니스가 아닐까 싶습니다. 스마트워치의 다양한 센서를 통해서 실시간 속도, 이동거리등 다양한 정보를 수집해서 사용자에게 보여줄 수 있습니다. 안드로이드의 ..
Daum DevDay 15th 후기 Daum Devday에 다녀온지 벌써 일주일이 지났네요. 후기를 적어야지적어야지 생각만 하다가, 간단히 적어봅니다. 이번 15회 다음 DevDay는 10개의 팀을 선정하여 제주도에서 1박 2일로 앱개발을 하였습니다. 다음에서 음성인식 API의 새로운 버전을 활용하여 개발을 목적으로 하고있고, 5.7:1의 경쟁률에 당당히 선정되었습니다. 총 10개의 팀으로 대학생, 고등학생, 일반인들이 골고루 분배된것 같았습니다. 다음의 음성인식 API의 새로운 버전은 기존의 검색타입 3가지에서 고립어 검색타입이 추가 되었습니다.웹검색연속어지도고립어 고립어 타입은 정해진 문자열 배열에서 음성인식을 통해 문자열중 가장비슷한 문자를 반환해줍니다. 예를 들어 "예", "아니요"로만 대답하는 경우 예, 아니오를 고립어 타입으로 ..
안드로이드 사용자 터치 Pressed에 대한 처리 방법 모바일 앱 특히 안드로이드 앱에서는 사용자의 액션에 대해서 즉각적인 피드백이 필요하다. 이러한 피드백은 안드로이드의 Selector를 통해 쉽게 구현이 가능하다. Selector는 특정 상태에 따라 설정한 Color값이나 Drawable로 변경해주는 안드로이드만의 가장 강력한 기능이다. 좀 더 알고 싶으면 이전에 작성한 글(안드로이드 Selector에서 Custom States 만들기)을 참고하기 바란다. 보통 안드로이드의 Pressed에 대한 처리는 레이아웃이나 뷰에서 Background의 Selector기능을 가진 Drawable로 처리하게 된다. Background로 처리하게 되면 레이아웃의 자식뷰들은 Selector의 색상이 가려져 뒷배경만 바껴 보이지 않게 된다. 자식뷰가 레이아웃과 동일한 크기..
AutoCompleteTextView에서 FilterQueryProvider를 이용한 DB쿼리 AutoCompleteTextView는 EditText를 상속받아 구현한것으로 자동완성 기능을 제공한다. Adapter를 설정하여 EditText가 타이핑이 일어나면 쿼리된 데이터를 보여준다. 이렇게 타이핑이 일어날때 DB에서 쿼리후 Adapter의 changeCursor()를 하곤 하는데 SimpleCursorAdapter의 아래의 setCursorToStringConverter()는 리스트에 표시될 문자열을 반환하는 것을 구현하면 되고, setFilterQueryProvider는 타이핑으로 문자열이 바뀌었을때 해당 데이터를 새롭게 불러온 Curor를 넘기면 된다. adapter.setCursorToStringConverter(new CursorToStringConverter() { public Str..