본문 바로가기

분류 전체보기

androod EditText 검색 키보드 띄우기 inputType에서 건드는건줄 알았는데 다른데서 바꾸는거였다..(상당히 삽질좀 했지만...) 한줄팁 android:imeOptions="actionSearch" 더보기
InputFilter EditText에 Byte제한걸기 editText에 문자 입력시 byte를 체크하여 해당 byte이상 입력하지 못하게 막는 방법입니다.InputFilter로 검색하시면 많은 예제가 검색됩니다.기존 예제로 적용을하면 하나씩 입력시에는 문제가 되지 않지만 많은 텍스트를 복사해서 붙여넣기시 제대로 체크가 되지 않는 문제가 생깁니다. 엔터를 체크하지 못하는 문제도 있습니다.문자에 따라 byte가 다르기 때문에 생기는 문제인데.. 한글이 2byte이고, 숫자/영문이 1byte..다량의 문자를 복사해서 붙여넣기 시 남는 바이트 만큼의 길이수를 구해 잘라내야 하는데.. 쉽지가 않더군요.결국 while문으로 계속 돌려서 해당 byte를 맞춘 소스입니다. ㅋㅋ 완전 노가다~~그래도 이렇게 하니까 해당 byte만큼 딱 잘라주네요.체크하고자 하는 byte가.. 더보기
Manifest portrait 안드로이드 앱을 만들다가 portrait으로 설정을 한 앱을 자동회전을 켜놓은 상태에서 가로로 눕혀서 실행하면 앱이 죽는 경우를 볼 수 있다. 이럴때에는 activity마다 android:configChanges="orientation|keyboardHidden"옵션을 주면 된다. 참으로 깔끔한 두줄 블로그....... 더보기
android.app.serviceconnectionleaked 안드로이드에서 서비스를 시작하고나서 Activity가 종료될때 실행은 되지만 로그캣에 android.app.serviceconnectionleaked에러가 나는 것을 볼 수 있다. 이것은 서비스를 unBind하지 않아서 나는 에러이므로 onDestory()에서 unbind처리를 해주면 된다. 더보기
파이선 공부하기 좋은 사이트 http://codejob.co.kr/docs/page/33/ http://coreapython.hosting.paran.com/tutor/index.htm http://wikidocs.net/read/854//여기가 제일 괜찮음 더보기
System.arrayCopy 소켓통신을 하거나 byte 데이터 가지고 놀 때 아주 유용한 메소드이다. byte의 범위를 복사해서 그대로 붙여넣을 수 있기 때문이다. * 사용 방법 : System.arrayCopy(데이터 변수(byte[]) , 시작점, 복사할 데이터 변수(byte[]), 복사 시작점, 복사 도착점 ); 참 쉽다. 하지만 복사할 데이터의 크기를 항상 생각해서 작성해야한다. 안그러면 Exception 발생. 더보기
각 자료형<->byte 이거하느라 노가다좀 했음..... boolean은 왜 없냐고 물어본다면 자바 자료형부터 다시 공부하길.... boolean은 논리형이기 때문에 변경할수가 없다. byte를 자료형으로...... public int byteToInt(byte[] data) { int result = 0; result += ((data[0] & 0xff) 32) & 0xff); data[4] = (byte) ((da >> 24) & 0xff); data[5] = (byte) ((da >> 16) & 0xff); data[6] = (byte) ((da >> 8) & 0xff); data[7] = (byte) ((da) & 0xff); return data; } 더보기
Buffer 버퍼는 데이터를 효율적으로 전달하기 위한 '객체'이다. 기존 IO에 대한 성능 개선을 위한 것으로 언뜻보면 포인터의 개념과 비슷하다고 생각했다. 속성으로는 4가지가 있는데 position은 버퍼의 현재 읽고 쓰는 위치를 나타내는 것이고, limit는 버퍼의 한계 위치. capacity는 버퍼의 크기이고, mark는 현재 position의 위치를 저장해놓는 역할을 한다. 이 4가지의 속성들을 잘 이해해야 Exception을 방지할 수 있다. 버퍼에 데이터를 넣는 방법은 put을, 데이터를 추출하는 것은 get을 이용한다. 그리고 자료형에 맞게끔 putInt, putFloat등의 메소드를 지원하기 때문에 효과적으로 데이터 입출력이 가능하다. 간단한 예제를 보면서 테스트 해보자. allocate는 버퍼의 크기.. 더보기
리눅스 tar 압축 명령 압축 : tar zcvf [압축파일명] [압축할 파일] [압축할 파일] [압축할 파일] ...... 해제 : tar zxvf [압축 파일명] 더보기
Python 입문... Python에 대한 첫 블로그라 어떻게 써야할지 고민.... 처음보는거라 금방할 수 있을까 생각했지만... 중요한거 3가지만 알면은 금방금방 익힐거 같다. (), [], {} 먼저 ()는 튜블이라고 해서 a = (1, 2, 3)이런식으로 쓴다. 안의 값은 바꿀 수 없으며 튜플안에 튜블이 오는 경우도 있다. 호출할 때에는 a = a[1], a[2]나 a = [0:2) 이런식으로 사용한다. []는 리스트로써 a = [1, 2, 3]이런식으로 쓴다. 안의 내용은 바뀔수 있으며 호출할 때에는 튜블과 비슷하게 호출한다. 리스트 안에 리스트가 올 수 있다. {}는 딕셔너리라고 해서 key:value값을 가진다. 왠지 해쉬구조나 json을 보는거같다. 사용방법은 위와 같지만 중요한것은 key에 리스트는 올 수 없고 .. 더보기