JAVA/Android

레이아웃(Layout) : 레이아웃 전개(Inflation)

zammanza 2013. 3. 27. 14:52

activity_main.xml : 내용 없음 

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context=".MainActivity" >

 

 

 

</RelativeLayout>

 

 

 

inflation.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:background="#cccccc"

    android:orientation="vertical" >

 

    <TextView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:gravity="center"

        android:text="TextView 전개"

        android:textColor="#ff0000"

        android:textSize="20sp" />

 

</LinearLayout>

 

 

 

 

text.xml

<?xml version="1.0" encoding="utf-8"?>

<TextView xmlns:android="http://schemas.android.com/apk/res/android"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:text="text.xml" >

 

</TextView>

 

 

 

MainActivity.java

package com.example.testex11;

 

import android.os.Bundle;

import android.app.Activity;

import android.content.Context;

import android.graphics.Color;

import android.text.Layout;

import android.view.Gravity;

import android.view.LayoutInflater;

import android.view.Menu;

import android.view.View;

import android.widget.LinearLayout;

import android.widget.TextView;

 

public class MainActivity extends Activity {

 

        @Override

        protected void onCreate(Bundle savedInstanceState) {

               super.onCreate(savedInstanceState);

              

               //직접 전개

               LinearLayout linear = new LinearLayout(this);

               linear.setOrientation(LinearLayout.VERTICAL);

               linear.setBackgroundColor(Color.LTGRAY);

              

               TextView text = new TextView(this);

               text.setText("Text View");

               text.setGravity(Gravity.CENTER);

               text.setTextColor(Color.RED);

               text.setTextSize(20);

              

               linear.addView(text);

               setContentView(linear);              

              

               //inflation.xml(LinearLayout) 전개

              LayoutInflater inflater = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);

               LinearLayout linear = (LinearLayout)inflater.inflate(R.layout.inflation, null);

               setContentView(linear);      

       

               //text.xml(TextView) 전개

               LinearLayout linear = new LinearLayout(this);

               linear.setOrientation(LinearLayout.VERTICAL);

               linear.setBackgroundColor(Color.LTGRAY);

              

               TextView text1 = (TextView)View.inflate(this, R.layout.text, null);

               TextView text2 = (TextView)View.inflate(this, R.layout.text, null);

                             

               linear.addView(text1);

               linear.addView(text2);

               setContentView(linear);

       

        }

 

        @Override

        public boolean onCreateOptionsMenu(Menu menu) {

               // Inflate the menu; this adds items to the action bar if it is present.

               getMenuInflater().inflate(R.menu.main, menu);

               return true;

        }

 

}