替换片段&;在android中添加片段
我使用这段代码在安卓4.0.4上用另一段代码替换片段 这段代码可以工作,但是对于安卓4.4.2不起作用,而对于安卓4.1.2则起作用 如果我使用此代码:替换片段&;在android中添加片段,android,fragment,Android,Fragment,我使用这段代码在安卓4.0.4上用另一段代码替换片段 这段代码可以工作,但是对于安卓4.4.2不起作用,而对于安卓4.1.2则起作用 如果我使用此代码: FragmentManager manager; manager=getFragmentManager(); FragmentTransaction transaction=manager.beginTransaction(); Fragment1 f1=new Fragment1(); Fragmen
FragmentManager manager;
manager=getFragmentManager();
FragmentTransaction transaction=manager.beginTransaction();
Fragment1 f1=new Fragment1();
Fragment2 f2=new Fragment2();
public void replace_one(View v)
{
Fragment1 f1=(Fragment1)manager.findFragmentByTag("f1");
transaction.remove(f1);
transaction.add(R.id.place,f2,"f2");
transaction.commit();
}
此代码适用于android 4.4.2,但适用于android4.0.4不起作用,适用于android 4.1.2
有什么问题吗?以下是添加或替换片段的方法:
//TO add your fragment
SomeFragment fragment = SomeFragment.getInstance()//If you have made your fragment singleton.
getFragmentManager().beginTransaction().add(YOUR_CONTAINER_ID, YOUR FRAGMENT, YOUR_FRAGMENT_UNIQUE_TAG).addToBackStack(null).commit();
//TO replace your fragment
SomeFragment fragment = SomeFragment.getInstance()//If you have made your fragment singleton.
getFragmentManager().beginTransaction().replace(YOUR_CONTAINER_ID, YOUR FRAGMENT, YOUR_FRAGMENT_UNIQUE_TAG).addToBackStack(null).commit();
和导入:
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
它在航海日志里。什么是工作?你期望的行为是什么?你收到的行为是什么?我的意思是:fragment1 hide and fragment2 showi used import android.app.Fragmenti阅读此声明:如果你想让你的应用程序使用碎片,并想在API 11之前瞄准设备,你必须使用安卓.support.v4.app.Fragment。但是,如果您只针对运行API 11或更高版本的设备,则可以使用android.app.Fragment。我创建了12个片段,但导入了android.app.Fragment
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;