
안드로이드 LayoutInflater 사용하기
안드로이드에서 레이아웃 XML파일을 View객체로 만들기 위해서는 LayoutInflater를 이용한다. LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View view = inflater.inflate(R.layout.my_layout, parent, false); 이렇게 간단하게 사용 할 수 있다. LayoutInflater 생성하기 1. Context#getSystemService() LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); View view = inflater.inflate(R.layout.my_layout, parent, false); 2. Activity#getLayoutInflater() LayoutInflater inflater = getLayoutInflater(); 액티비티에서는 LayoutInflater를 쉽게 얻어올수 있도록 getLayoutInflater() 메소드를 제공한다. 엑티비티의 윈도우에 있는 getLayoutInflater()로 포워딩 해준다. // android/app/Activity.java public LayoutInflater getLayoutInflater() { return getWindow().getLayoutInflater(); } 3. LayoutInflater.from() LayoutInflater inflater = LayoutInflater.from(context) View view = inflater.inflate(R.layout.my_layout, parent, false); LayoutInflater에서는 LayoutInflater를 쉽게 생성 할 수 있도록 static factory 메소드 LayoutInflater.from()을 제공한다. (내부적으로 getSystemService를 호출함) ...