-
[비공개] 안드로이드 사용자 터치 Pressed에 대한 처리 방법
(adsbygoogle = window.adsbygoogle || []).push({}); 모바일 앱 특히 안드로이드 앱에서는 사용자의 액션에 대해서 즉각적인 피드백이 필요하다. 이러한 피드백은 안드로이드의Selector를 통해 쉽게 구현이 가능하다. Selector는특정 상태에 따라 설정한 Color값이나 Drawable로 변경해주는 안드로이드만의 가장 강력한 기능이다. 좀 더 알고 싶으면 이전에 작성한 글(안드로이드 Selector에서 Custom States 만들기)을 참고하기 바란다.보통 안드로이드의 Pressed에 대한 처리는 레이아웃이나 뷰에서Background의Selector기능을 가진 Drawable로 처리하게 된다. Background로 처리하게 되면 레이아웃의 자식뷰들은 Selector의 색상이 가려져 뒷배경만 바껴 보이지 않게 된다. 자식뷰가 레이아웃과 동일한 크기를 가지는 경우에는 거의 표시 되지 않는것과 다름이 없을 정도로 눈에 보이지 않을 수 있..추천 -
[비공개] AutoCompleteTextView에서 FilterQueryProv..
AutoCompleteTextView는 EditText를 상속받아 구현한것으로 자동완성 기능을 제공한다. Adapter를 설정하여 EditText가 타이핑이 일어나면 쿼리된 데이터를 보여준다. 이렇게 타이핑이 일어날때 DB에서 쿼리후Adapter의 changeCursor()를 하곤 하는데 SimpleCursorAdapter의 아래의setCursorToStringConverter()는 리스트에 표시될 문자열을 반환하는 것을 구현하면 되고,setFilterQueryProvider는 타이핑으로 문자열이 바뀌었을때 해당 데이터를 새롭게 불러온Curor를 넘기면 된다. adapter.setCursorToStringConverter(new CursorToStringConverter() { public String convertToString(android.database.Cursor cursor) { final int columnIndex = cursor.getColumnIndexOrThrow("title"); final String str = cursor.getString(columnIndex); return str; } }); adapter.setFilterQueryProvider(new FilterQueryProvider() { public Cursor runQuery(CharSequence constraint) { Cursor cursor = mDb.getDbLists(co..추천 -
[비공개] AutoCompleteTextView에서 FilterQueryProv..
AutoCompleteTextView는 EditText를 상속받아 구현한것으로 자동완성 기능을 제공한다. Adapter를 설정하여 EditText가 타이핑이 일어나면 쿼리된 데이터를 보여준다. 이렇게 타이핑이 일어날때 DB에서 쿼리후Adapter의 changeCursor()를 하곤 하는데 SimpleCursorAdapter의 아래의setCursorToStringConverter()는 리스트에 표시될 문자열을 반환하는 것을 구현하면 되고,setFilterQueryProvider는 타이핑으로 문자열이 바뀌었을때 해당 데이터를 새롭게 불러온Curor를 넘기면 된다. adapter.setCursorToStringConverter(new CursorToStringConverter() { public String convertToString(android.database.Cursor cursor) { final int columnIndex = cursor.getColumnIndexOrThrow("title"); final String str = cursor.getString(columnIndex); return str; } }); adapter.setFilterQueryProvider(new FilterQueryProvider() { public Cursor runQuery(CharSequence constraint) { Cursor cursor = mDb.getDbLists(co..추천 -
[비공개] AutoCompleteTextView에서 FilterQueryProv..
(adsbygoogle = window.adsbygoogle || []).push({}); AutoCompleteTextView는 EditText를 상속받아 구현한것으로 자동완성 기능을 제공한다. Adapter를 설정하여 EditText가 타이핑이 일어나면 쿼리된 데이터를 보여준다. 이렇게 타이핑이 일어날때 DB에서 쿼리후Adapter의 changeCursor()를 하곤 하는데 SimpleCursorAdapter의 아래의setCursorToStringConverter()는 리스트에 표시될 문자열을 반환하는 것을 구현하면 되고,setFilterQueryProvider는 타이핑으로 문자열이 바뀌었을때 해당 데이터를 새롭게 불러온Curor를 넘기면 된다. adapter.setCursorToStringConverter(new CursorToStringConverter() { public String convertToString(android.database.Cursor cursor) { final int columnIndex = cursor.getColumnIndexOrThrow("title"); final String str = cursor.getString(columnIndex); return str; } }); adapter.setFilterQueryProvider(new FilterQueryProvider() { public Cursor runQuery(CharSequenc..추천 -
[비공개] AutoCompleteTextView에서 FilterQueryProv..
(adsbygoogle = window.adsbygoogle || []).push({}); AutoCompleteTextView는 EditText를 상속받아 구현한것으로 자동완성 기능을 제공한다. Adapter를 설정하여 EditText가 타이핑이 일어나면 쿼리된 데이터를 보여준다. 이렇게 타이핑이 일어날때 DB에서 쿼리후Adapter의 changeCursor()를 하곤 하는데 SimpleCursorAdapter의 아래의setCursorToStringConverter()는 리스트에 표시될 문자열을 반환하는 것을 구현하면 되고,setFilterQueryProvider는 타이핑으로 문자열이 바뀌었을때 해당 데이터를 새롭게 불러온Curor를 넘기면 된다. adapter.setCursorToStringConverter(new CursorToStringConverter() { public String convertToString(android.database.Cursor cursor) { final int columnIndex = cursor.getColumnIndexOrThrow("title"); final String str = cursor.getString(columnIndex); return str; } }); adapter.setFilterQueryProvider(new FilterQueryProvider() { public Cursor runQuery(CharSequenc..추천 -
[비공개] 안드로이드 Selector에서 Custom States 만들기
안드로이드의 강력한 기능중 SelectorStates기능있다. 특정한 상태에 따른 리소스를 변경해준다. 예를 들어 버튼을 누를때의 색상과포커스를 받았을때의 색상을 각각의 상태에 따라 다르게 처리할 수있다. 이것을 이용하면 Drawable또는 Color를 직접적으로 바꾸지 않고 자동으로 바뀌도록 관리 할 수 있다.안드로이드에서는 기본적으로 다양한 상태를 기본으로 지원 해주고 있다. 흔하게 쓰이는 것은 다음과 같다.android:state_pressed버튼을 터치하는 시점android:state_focused트렉패드나 키보드로 포커스가 왔을때android:state_selected선택되어 있을때android:state_checkable체크가능한 상태에서 터치android:state_checked체크된 상태에서 터치다음과 같이 color값을 만들어 사용 할 수있다. 버튼의 textColor에 위에서 만든 리소스를 지정한다. 하지만 모든 레이아웃과 뷰..추천 -
[비공개] 안드로이드 Selector에서 Custom States 만들기
안드로이드의 강력한 기능중 SelectorStates기능있다. 특정한 상태에 따른 리소스를 변경해준다. 예를 들어 버튼을 누를때의 색상과포커스를 받았을때의 색상을 각각의 상태에 따라 다르게 처리할 수있다. 이것을 이용하면 Drawable또는 Color를 직접적으로 바꾸지 않고 자동으로 바뀌도록 관리 할 수 있다.안드로이드에서는 기본적으로 다양한 상태를 기본으로 지원 해주고 있다. 흔하게 쓰이는 것은 다음과 같다.android:state_pressed버튼을 터치하는 시점android:state_focused트렉패드나 키보드로 포커스가 왔을때android:state_selected선택되어 있을때android:state_checkable체크가능한 상태에서 터치android:state_checked체크된 상태에서 터치다음과 같이 color값을 만들어 사용 할 수있다. 버튼의 textColor에 위에서 만든 리소스를 지정한다. 하지만 모든 레이아웃과 뷰..추천 -
[비공개] 안드로이드 Selector에서 Custom States 만들기
(adsbygoogle = window.adsbygoogle || []).push({}); 안드로이드의 강력한 기능중 SelectorStates기능있다. 특정한 상태에 따른 리소스를 변경해준다. 예를 들어 버튼을 누를때의 색상과포커스를 받았을때의 색상을 각각의 상태에 따라 다르게 처리할 수있다. 이것을 이용하면 Drawable또는 Color를 직접적으로 바꾸지 않고 자동으로 바뀌도록 관리 할 수 있다.안드로이드에서는 기본적으로 다양한 상태를 기본으로 지원 해주고 있다. 흔하게 쓰이는 것은 다음과 같다.android:state_pressed버튼을 터치하는 시점android:state_focused트렉패드나 키보드로 포커스가 왔을때android:state_selected선택되어 있을때android:state_checkable체크가능한 상태에서 터치android:state_checked체크된 상태에서 터치다음과 같이 color값을 만들어 사용 할 수있다. 버튼의 textColor에 위에서 만든 리소스를 ..추천 -
[비공개] 안드로이드 Selector에서 Custom States 만들기
(adsbygoogle = window.adsbygoogle || []).push({}); 안드로이드의 강력한 기능중 SelectorStates기능있다. 특정한 상태에 따른 리소스를 변경해준다. 예를 들어 버튼을 누를때의 색상과포커스를 받았을때의 색상을 각각의 상태에 따라 다르게 처리할 수있다. 이것을 이용하면 Drawable또는 Color를 직접적으로 바꾸지 않고 자동으로 바뀌도록 관리 할 수 있다.안드로이드에서는 기본적으로 다양한 상태를 기본으로 지원 해주고 있다. 흔하게 쓰이는 것은 다음과 같다.android:state_pressed버튼을 터치하는 시점android:state_focused트렉패드나 키보드로 포커스가 왔을때android:state_selected선택되어 있을때android:state_checkable체크가능한 상태에서 터치android:state_checked체크된 상태에서 터치다음과 같이 color값을 만들어 사용 할 수있다. 버튼의 textColor에 위에서 만든 리소스를 ..추천 -
[비공개] 구글플러스 안드로이드 앱 프로필 화면 구성
요즘 안드로이드 UI를 보면 섹션바가 중간쯤 있다가 위로 올라가면 위쪽에 걸쳐지는 경우가 많다. 구글에서 만들 앱을 보면 더더욱 많이 쓰고 있다. 구글 플러스의 프로필 페이지와 얼마전에 업데이트된 뉴스 스텐드 앱이다. 하지만 자세히보면 모두 구현 방식이 다르다. 구글 플러스좌우로 스와이프 되지 않고, 하나의 리스트뷰에 Adapter변경 방식스크롤이 완료 되면 섹션을 ListView위에 다시 그리고 이벤트 처리하는 방식http://antoine-merle.com/blog/2013/10/04/making-that-google-plus-profile-screen구글 플러스의 프로필 화면을 분석 해놓은 글이다. 구글 뉴스 스텐드, AirbnbViewPager를 사용하여 좌우 스와이프가 됨.ViewPager뒤에 배경을 주고 페이지별로 상단에 여백을 주어 배경이 비치게한뒤, 스크롤시 여백을 줄이는지 리스트뷰 터치이벤트를 넘겨 스크롤될지 판단하는 로..추천