Android 3.0 以下 使用Fragment 实例

时间:2025-02-09 08:40:53

首先在 Android 3.0以下使用 Fragment 要导入 .v4 这份包,

例外在低版本中使用 Fragment 时,可能出现很多不好解决的错误。

一个非常可能的错误是:

import 高版本的Fragment包

还import 这个支持库。我想你会出现很多不可思意的错误。


另一个,是你要使用 FragmentManager 就 主Activity 必须继承 FragmentActivity


我们就先讨论这个,DialogFragment 这的使用和实现一 Dialog

本实例只为 最简化,清晰的理解 Fragment,固代码精简了很多。

源文件:

3.activity_main.xml



package ;

import ;
import .;
import .;
import .;
import ;

public class MainActivity extends FragmentActivity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		(savedInstanceState);
		
		setContentView(.activity_main);
		
		FragmentManager fm_1 = getSupportFragmentManager();
		
        MyDialogFragment mdf = new MyDialogFragment();
        
		FragmentTransaction ft_1 =  fm_1.beginTransaction();
		
		(fm_1, "hello");		
		
		ft_1.commit();		
		
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		return true;
	}

}

package ;

import ;
import ;
import ;
import .;

public class MyDialogFragment extends DialogFragment {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        (savedInstanceState);
    }
    
    @Override
    public Dialog onCreateDialog(Bundle saveInstanceState){
    	 builder =new (getActivity());
    	("hello");
    	return ();
    }
}

3.activity_main.xml

<FrameLayout 
    xmlns:andro
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id ="@+id/leftView"
    android:background="#ff4500">
</FrameLayout>


源码现在地址: