..
그것이 처음 혼동을 피하기과 노출의 선형 경로를 따라하기 위해서는 작업의 기본을 설명하기 위해 원하는대로 이전 챕터에서 신중하게, 독자에게 청취자의 최적화된 버전을 제공할되지 않았습니다. 구현 관점에서, 그러나, 위에 표시된 코드 - 같은 언급은 - 확실히 선호하는 솔루션되지 않습니다.
우리가 지금보고 무슨 따라서 메서드 setOnClickListener을 사용 OnClickListener 버튼 모두에서 호출하는 개체를 생성하여 청취자의 최적화된 구현입니다.
Posizioniamoci, 그럼 다시 HelloWorld.java 파일에 다음과 같은 코드를 삽입합니다 :
View.OnClickListener View.OnClickListener 관리자 = 새 () {
공공 무효 onClick (보기보기) {
스위치 (view.getId ()) {
R.id.bottone1 가정 :
textView1.setText ( 'E'가 버튼 하나를 클릭했다 !!!!!");
휴식;
R.id.bottone2 가정 :
textView1.setText ( 'E'버튼 2를 클릭했습니다 !!!!!");
휴식;
}
}
};
bottone1.setOnClickListener (관리자);
bottone2.setOnClickListener (관리자);
그래서, 먼저 다음 우리가 이전에했던 것처럼 OnClick 메서드를 재정의하려고, 클래스의 생성자를 호출, 새로운 구성 이후를 입력 OnClickListener의 개체를 생성합니다.
우리가 만든 리스너는 모두 동일하고 이전 구현에 비해 따라서 bottonni되는 차이를 가지고, 우리는 청취자의 새 인스턴스에 저장된 메모리를했습니다. 이점은 윈도우에서 버튼의 번호로 더욱 분명하다.
본질적으로, 리스너는 이에 따라 행동 클릭 두 개의 버튼 중 어느 이해할 수 있습니다. 버튼의 인식이 조건 view.getId ()을 기반으로 스위치를 사용 누르면됩니다.
우리가 버튼을 클릭하면 OnClick 메서드가 다음 인수로보기하고 볼 수 있듯이,보기 개체가 누르면 버튼으로 초기화됩니다. 메소드 getId ()를 사용하면 우리가 이전 챕터에서 본 파일 R.java에있는 버튼에 연결된 고유 ID를 반환합니다.
우리가 구조의 경우에서 볼 수 있듯이 시점에서 그것은 버튼의 ID에 기초하여 누르면 버튼을 구별할 수 있습니다.
일단 OnClick 메서드에 대한 코드는 앞에서 만든 인수 'OnClickListener로 오른쪽 버튼 모두에서 메서드 setOnClickListener라고합니다.
일단 이해이 장에서는에 표시된 코드는 그것은 사용하기 쉽고 변경 쉽습니다. 사실이 구현뿐만 아니라 수 있도록 낮은 메모리 사용량 (그러나별로 전화기 같은 제한된 메모리 장치에 프로그래밍 할 때 최소)에서 쉽게 maintainable되는 큰 장점이 있습니다. 우리는 코드의 어떤 부분을 편집에 가서 정확하게 알 수 리스너의 동작을 변경해야하는 경우 때문입니다. 이 경우, 우리가 내부 코드를 수정하는 andarne 다음 리스너 사용의 모든 요소에 대한 모든 코드를 이동해야하기 때문에 우리가 이전 구현을 사용하는 경우 같은 문제는라고 할 수 없습니다.
우리가 동일한 리스너는 단순히 다음 단계를 수행합니다 사용하여 다른 단추를 삽입할 필요가있다면 같이 개선 구현도 쉽게 확장됩니다 :
| |
ASP 과정
동적 웹 사이트를 만드는 전체 과정. 2012년 6월 1일까지 -10 % 할인합니다. |
| |
VB.NET 코스
Visual Basic을 사용하여 데스크톱 응용 프로그램을 만듭니다.. NET 2012년 6월 1일까지 할인 -5 %를. |
| |
XML 코스
시설 XML, XSL 및 기타 확장 언어의 창조. 2012년 6월 1일까지 -15 % 할인. |