펌 OK (출처 표시), 상업적 이용 NO, 컨텐츠 변경 NO





Handlermsgint값을 보낼 수 있다는것은 알것이다.

(http://biig.tistory.com/34  -  핸들러 사용법 포스팅)



그렇다면, 메시지로 객체를 전달할 수는 없을까 ??


할 수 있다.


기존에는


handler.sendEmptyMessage(int);


형식으로 메시지를 전송했다면,



같은 위치에서


Message msg = handler.obtainMessage();


으로 선언 해 주면


msg.what(int);

msg.obj(Object);

msg.arg1(int);

msg.arg2(int);


이런식으로 메시지에 객체를 담을 수 도 있고, 인트값도 저렇게 넣어 줄 수 있다.


잘 활용한다면 매우 유용하다.


예를들어 다른 액티비티에 객체를 전달해야 하는 경우, parcelable를 상속받고 기타 과정이 복잡한데


Handler를 통해 Object를 넘겨주면 매우 간단하게 해결이 가능하다.


그리고 sendEmptyMessage 대신


handler.sendMessage(msg);


로 해주면 전달이 완료된다.




펌 OK (출처 표시), 상업적 이용 NO, 컨텐츠 변경 NO




Ctrl + Shift + O

ㄴ 자동 import. import가 필요한 부분은 자동으로 연결 해 주고, 불필요한 import는 제거한다.

    초보의 경우, 빨간줄이 생기면 한번씩 눌러보면 해결되는 경우가 많다.


Ctrl + M

ㄴ 현재 활성화 돼 있는 창 이외의 모든 창을 최소화. 즉 소스코드창이 활성화 돼 있는 상태라면,

    소스코드 창을 제외한 Project창이나 Console창이 최소화돼 소스코드창을 넓게 사용 가능.

    한번 더 누르면 원래상태로 복귀한다.


Ctrl + D

ㄴ 커서 라인을 삭제한다.


Ctrl + Shift + C  == Ctrl + /

ㄴ 선택 영역 또는 현재 라인을 주석처리한다. (한손으로 가능해서 편함)


Ctrl + Alt + 방향키 Up , Down

ㄴ 포커스가 위치한 라인을 위 또는 아래에 그대로 Copy 한다.


Ctrl + F

Find/Replace창 표시


Ctrl + Z , Ctrl + Y

Z는 작업 이전으로, YZ로 뒤로갔던것을 다시 앞으로 돌린다.


Ctrl + W

ㄴ 현재 활성화 된 탭 닫기


Ctrl + S

ㄴ 수정사항 저장


Ctrl + L

ㄴ 라인을 입력하는 창이 나오고, 라인을 입력하면 해당 라인으로 이동


F3

ㄴ 메소드/변수를 블록선택 하고 F3을 누르면 해당 메소드가 선언된곳으로 이동한다.


Ctrl + K, Ctrl + Shift + K

ㄴ 메소드/변수를 블록선택하고 단축키를 실행하면 선택된 메소드의 사용한 이전, 다음 사용 라인으로 이동한다.


Ctrl + Shift + F

ㄴ 선택된 영역 코딩스타일 자동 정렬




Android/View | Posted by 덩치 2014. 4. 15. 10:55

간단한 얼럿다이얼로그 출력

펌 OK (출처 표시), 상업적 이용 NO, 컨텐츠 변경 NO




AlertDialog.Builder builder = new AlertDialog.Builder(mContext)

.setTitle("종료")

.setMessage("프로그램을 종료 하시겠습니까?")

.setPositiveButton("예", new DialogInterface.OnClickListener() {

public void onClick(DialogInterface dlg, int value) {

finish();

}

})

.setNegativeButton("아니요", null);

AlertDialog dialog = builder.create() ;

dialog.show() ;



아니오 버튼에도 리스너를 등록하고싶으면 예 처럼 다이얼로그인터페이스의 클릭리스너를 등록 해 주면 된다.


빌더 옵션에 .addView(view) 를 하면 LayoutInflater로 가져온 뷰를 내용에 셋팅할 수 있다.