Android Activity加载Fragment的一般简易方法

标签: android
3295人阅读 评论(0) 收藏 举报
分类:
Android Activity加载Fragment的一般简易方法


首先写一个布局,布局里面以FrameLayout布局为佳,
<FrameLayout 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:id="@+id/fragment"
    tools:context="com.example.demo.MainActivity" >
</FrameLayout>


然后在上层java代码中创建Fragment进而replace上面的这个FrameLayout:

package com.example.demo;

import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);

		setContentView(R.layout.activity_main);

		FragmentManager fm = this.getFragmentManager();
		FragmentTransaction ft = fm.beginTransaction();
		ft.replace(R.id.fragment, new MyFragment());

		// addToBackStack添加到回退栈,addToBackStack与ft.add(R.id.fragment, new
		// MyFragment())效果相当
		// ft.addToBackStack("test");

		ft.commit();
	}

	private static class MyFragment extends Fragment {

		@Override
		public void onCreate(Bundle savedInstanceState) {
			super.onCreate(savedInstanceState);
		}

		@Override
		public View onCreateView(LayoutInflater inflater, ViewGroup container,
				Bundle savedInstanceState) {
			View view = inflater.inflate(android.R.layout.simple_list_item_1,
					null);
			return view;
		}

		@Override
		public void onViewCreated(View view, Bundle savedInstanceState) {
			TextView text = (TextView) view.findViewById(android.R.id.text1);
			text.setText("hello,world!");
		}
	}
}


如果使用FragmentTransaction的add而不是replace,那么与replcae情况下再加入addToBackStack结果相当。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1317144次
    • 积分:17499
    • 等级:
    • 排名:第607名
    • 原创:487篇
    • 转载:13篇
    • 译文:1篇
    • 评论:248条
    联络方式
    邮箱: zhangphil@live.com
    博客专栏
    文章分类