我遇到了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();
答案 0 :(得分:1)
将getFragmentManager更改为getSupportFragmentManager以使用sherlockfragment
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.content_frame, fragment).commit();