Notice
Recent Posts
Recent Comments
Link
study record
[안드로이드] inflate란? 본문
inflate란?
xml에 표기된 뷰와 레이아웃들을 메모리에 객체화시키는 행동.
즉 xml코드들을 객체화해서 코드에서 사용하기 위함이다.
setContentView()함수가 XML을 객체화시키는 inflate 동작.
setContentView()함수 아래에서 XML 안의 UI요소들을 맘껏 끌어와 쓸 수 있다.
만약 다른 화면을 구성하는 XML을 불러오고 싶은 경우(자동으로 생성된 XML이 아닌 유저가 추가적으로 만든 XML을 객체화시키기 위해 inflate 필요).
LayoutInflater 객체를 만들고 원하는 XML을 inflate한다.
LayoutInflater inflater = getLayoutInflater();
or
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v1 = inflater.inflate(R.layout.comedy,null);
이후 UI객체에 접근하기 위해서는 v1.findViewById(R.id.button) 하면 된다.
+
inflater.inflate(R.layout.comedy, container, true);
라는 코드를 통해서 container라는 레이아웃에, 작성했던 xml의 메모리객체가 삽입되게도 할 수 있다.
매개변수 설명 : inflate( 1.객체화하고픈 xml파일, 2.객체화한 뷰를 넣을 부모 레이아웃/컨테이너, 3.true(바로 인플레이션 하고자 하는지))
'안드로이드' 카테고리의 다른 글
[안드로이드] 캘린더 팝업 기능 AlertDialog (0) | 2021.02.28 |
---|---|
[안드로이드] 리스트뷰 즐겨찾기(찜하기) 기능 구현 (5) | 2021.02.28 |
[안드로이드] 인텐트 Intent (0) | 2021.02.05 |
[안드로이드] 액티비티와 프래그먼트 차이 (0) | 2021.02.04 |
[안드로이드] 프래그먼트 View (0) | 2021.02.04 |