Honey Comb(Android 3)부터 Fragment라는 것이 들어왔는데, 그동안 프로바이더나 네트워크 Sync쪽으로만 너무 일이 몰려있던 바람에 Fragment를 이것 저것 많이 다루지 못했던것 같다.
그래서 정말 진짜,, 기초적으로!!! 나중에 참고할일이 있을때 바로 샘플로 사용하기 위해서 간단하 Activity 하나에 Fragment를 두개를 붙이는 예제를 만들었다.
아무런 내용도 없는 진짜 껍데기만 존재하는 코드라서, 나중에 필요한 부분을 붙여넣을 일이 생길때만 사용하면 된다.
너무 휑~~ 하다. 소스도 역시 내용이 없다, 필요할때 채워서 써야 한다.
1. Main Layout
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <fragment android:id="@+id/fragment1" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" class="com.hopeisagoodthing.fragments.Fragment1" /> <fragment android:id="@+id/fragment2" android:layout_width="fill_parent" android:layout_height="0dp" android:layout_weight="1" class="com.hopeisagoodthing.fragments.Fragment2" /> </LinearLayout>
2. Fragment1 layout
<?xml version="1.0" encoding="utf-8"?> <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" > <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="@string/fragment1" tools:context=".MainActivity" /> </RelativeLayout>
3. Fragment2 layout
<?xml version="1.0" encoding="utf-8"?> <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" > <TextView xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true" android:text="@string/fragment2" tools:context=".MainActivity" /> </RelativeLayout>
4. MainActivity.java
package com.hopeisagoodthing.fragments; import android.app.Activity; import android.os.Bundle; public class MainActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }
5. Fragment1.java
package com.hopeisagoodthing.fragments; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class Fragment1 extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.fragment1, container, false); return v; } }
6. Fragment2.java
package com.hopeisagoodthing.fragments; import android.app.Fragment; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class Fragment2 extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View v = inflater.inflate(R.layout.fragment2, container, false); return v; } }
'코딩하고 > Android' 카테고리의 다른 글
Android 개발 환경 설치하기(한큐에 끝!!!) (0) | 2012.11.27 |
---|---|
DB관리하기 - Provider 사용하기 (0) | 2012.11.21 |
아날로그 시계 만들기, 헐!!! 코딩없이 된다. (1) | 2012.11.14 |
HttpClient 사용하기 (0) | 2012.10.25 |
File Observer 사용하기 (0) | 2012.10.21 |