This Handler class should be static or leaks might occur 안드로이드에서 Handler 오브젝트는 모든 스레드 반복문에서 참조하는데 어느 한 곳에 종속되면 안되기 때문이다. 그렇게 되면 GC가 되지 않아 Memory Leak이 계속해서 발생하게 되는 것이다 이전 소스 123456Handler handler = new Handler(){ @Override public void handleMessage(Message msg) { super.handleMessage(msg); }};Colored by Color Scriptercs Handler를 상속받은 클래스를 하나 만들어 static 등록 123456789101112131415private final MyHand..
Android Developer notifyDataSetChangedadded in API level 1void notifyDataSetChanged ()Notifies the attached observers that the underlying data has been changed and any View reflecting the data set should refresh itself. Adapter Android APIs' Reference에 따르면'Adapter' 자체는 하나의 Object로서, 보여지는 View와 그 View에 올릴Data를 연결하는 일종의 Bridge라고 한다 +내가 이해하기론list.setAdatper(adapter);를 통해 Activity와 Adapter를 연결해 주기 때..
[Android] EditText 입력 변화 이벤트 addTextChangedListener EditText에 사용자가 텍스트를 입력할 때 사용 입력되는 텍스트에 변화가 있을 때마다 리스너 이벤트가 작동한다 12345678910111213141516171819202122232425editText.addTextChangedListener(new TextWatcher() { /** * @param CharSequence s 현재 에디트 텍스트에 입력된 문자열을 담고 있다 * @param int start s에 저장된 문자열 내에 새로 추가될 문자열의 위치값 * @param count s에 담긴 문자열 가운데 새로 사용자가 입력할 문자열에 의해 변경될 문자열의 수 * @param int after 새로 추가될..
RecyclerView getPosition() 새로운 지원 라이브러리 버전 (22.x)부터 RecyclerView.ViewHolder 클래스의 getPostion()이 deprecated 되었고 getLayoutPosition, getAdapterPosition 메소드가 추가되었다 그러나 getAdapterPosition 이 -1 을 반환할 때가 있다RecyclerView.NO_POSITION 인지를 꼭 확인토록 하자 1if(getAdapterPosition() != RecyclerView.NO_POSITION)cs +onCreateViewHolder 에서는 새로운 인스턴스만 반환하자(항상 new Holder()를 반환토록) getAdapterPosition vs getLayoutPosition 둘 중..
안드로이드 개발 문서 https://developer.android.com/reference/java/net/HttpURLConnection.html 기본 검색 폼 URL url = new URL("http://www.android.com/");HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();try{InputStream in = new BufferedInputStream(urlConnection.getInputStream());readStream(in);}finally{urlConnection.disconnect();} + 많은 양의 데이터를 서버와 주고 받을 때 스트림을 사용하여 한 번에 많은 데이터가 메모리에 존재 ..