스크롤상태를 확인가능한 ScrollView
스크롤뷰에서, 스크롤된 상태를 알수 없을 경우가 있기 때문에, 만든 커스텀 위젯입니다. 현재, HorizontalScrollView를 기준으로 만들었는데, 그냥 ScrollView도 다음과 같이 하시면 바로 적용가능하시겠네요. 스크롤뷰의 위치가 어디에 위치했는가를 알려줍니다. 상태는 세가지가 있습니다. public static enum DIRECTION { LEFT, RIGHT, NONE } 스크롤이 움직이게 되면, 커스텀 위젯의, OnEdgeTouchListener 가 호출되고, 여기서 스크롤 위치를 계산하여 콜백을 날려주게 됩니다. 이때, 위의 DIRECTION상태에 따라서, 원하시는 액션을 취해주시면 됩니다. 만든 방법은, 스크롤 될때마다 computeScroll을 호출하기 때문에, 이때마다 위치를..
더보기
안드로이드 키보드의 InputType정리
안드로이드 단말은, 에딧텍스트의 상태에 따라, 키보드의 모양이 달라지게 할 수 있지요. 비밀번호를 눌러야 한다면, 숫자키보드가 나오고 뭐, 그런 것말이죠, 이것은 editText의 inputType 속성을 적절히 지정해주면 됩니다. 이 속성에 따라서, 키보드에 표시되는 키의 종류가 달라집니다. 속성은 세가지, Class, Variation, Flag 세가지가 있고, 각 속성은 중복되어 사용가능 합니다. 중복하여 사용하려면, |로 연결하여 사용합니다. Class는 숫자, 문자, 비밀번호 등 입력문자의 종류를 지정합니다. Variation은 Class의 세부적속성이 들어가죠. Flag는 이보다 더 세부적인 속성으로, 대문자 자동변환 여러줄 입력 등의 동작을 수행한다고 합니다. 코드에서 inputType의 속..
더보기
안드로이드 키보드 옵션
안드로이드는 모바일 프로그래밍이기 때문에, 화면의 제약이 많습니다. 이에 따라서, 화면을 효율적으로 사용하기 위하여, 키보드가 올라왔을경우, 화면을 어떻게 표현할 것인가가 중요한 이슈가 되기도 하죠. 그래서, 안드로이드는 키보드가 화면에 보여질때 어떻게 표현할 것인가에 대해서, 몇가지 가이드라인을 주고 있습니다. 제가 겪은 일중 하나는, 안드로이드 키보드가 올라올시 레이아웃이 재조정되는 현상이 있었습니다. 저는, 키보드가 올라오더라도 레이아웃이 유지되기를 원했습니다. 그래서, 이것을 해결하기 위해, 매니페스트 파일을 조정해 주었습니다. android:windowSoftInputMode="adjustPan" 저는 위의 방법을 썼네요, 네임플레이스와, 옵션은 다음과 같습니다. android:windowSof..
더보기