Android

안드로이드 - inflate 예제

로픽 2016. 9. 30. 22:52
300x250

안드로이드 inflate예제


간단히 설명하면 대화상자를 통해서 입력한 정보를 레이아웃에 출력하는 앱입니다. 


여기서 inflate를 이용하여 정적인 xml을 자바에서 객체로 만들어서 사용합니다.


기존에 작성하던 activity_main.xml에 추가로 dialog1.xml, toast1.xml을 생성하였습니다.


dialog1.xml의 경우 대화상자에 표시할 내용을 나타냅니다.


toast1.xml의 경우 대화상자의 종료시 나타나는 토스트 메시지를 작성한 xml입니다.

(기존에 흑색의 토스트가 아닌 예쁜 토스트 메시지를 만들 수 있습니다.)



-----------------------------------------------------------------------------------------------------------------------------------------


** 사용자 정보 입력 앱 **



어플리케이션         어플리케이션


- activity.xml 과 dialog1.xml을 inflate한 앱 화면


어플리케이션       앱


- 사용자 정보 입력 후 화면과 토스트 메시지


-----------------------------------------------------------------------------------------------------------------------------------------


** activity_main.xml



- 두개의 텍스트뷰를 생성한다. 텍스트뷰는 대화상자에서 입력한 텍스트가 표시되는 곳이다.


- 버튼을 클릭하면 대화상자가 실행된다


-----------------------------------------------------------------------------------------------------------------------------------------


** dialog1.xml



- 대화상자를 구성할 xml, inflate를 통해서 대화상자를 실행할 수 있다.


-----------------------------------------------------------------------------------------------------------------------------------------


** toast1.xml



- 토스트 메시지를 구성하는 xml, 두개의 이미지 사이에 TextView 메시지를 넣습니다.


-----------------------------------------------------------------------------------------------------------------------------------------


** MainActivity.java



- MainActivity.java의 일부분으로 button1을 클릭하면 발생하는 이벤트를 처리하는 메소드 부분입니다.


- inflate를 통해서 대화상자 객체를 생성한 이후 dialog1.xml에서 선언한 2개의 버튼에 이벤트를 처리합니다.


- setPositiveButton(), setNegativeButton()메소드 두개를 이용하는데 정해진 순서 없이 정의하면 됩니다.


*** 전체 소스 코드 ***

(이미지의 경우 임의로 선택하여 변경하시면 됩니다.)

activity_main.xml

dialog1.xml

MainActivity.java

toast1.xml

반응형