无法使用SherlockFragment

时间:2014-03-10 12:51:48

标签: android replace actionbarsherlock fragment fragmentmanager

我遇到了SherlockFragment的问题。 如果我用“Fragment”改变“extends SherlockFragment”,那就完美了。 但是当与Sherlock合作时,我会以这种方式工作。

此代码是一个片段:

import com.actionbarsherlock.app.SherlockFragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;


public class Box extends SherlockFragment {

    public Box(){}

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.box, container, false);
        return rootView;
    }
}

在我的ActivityMain.java中,我有这个:

SherlockFragment fragment = null;

它适用于Fragment fragment = null;

我称之为:

fragment= new Box();

但问题是此代码中的.replace:

 FragmentManager fragmentManager = getFragmentManager();
 fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();

1 个答案:

答案 0 :(得分:1)

将getFragmentManager更改为getSupportFragmentManager以使用sherlockfragment

FragmentManager fragmentManager = getSupportFragmentManager();
 fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();