2015-12-25 48 views
0

我想膨脹活動的一些片段(這不是主要的,但是活動)。充氣活動的片段

我做的正是這樣的指令:

FragmentManager fragmentManager = getFragmentManager(); 
    FragmentTransaction fragmentTransaction = 
    fragmentManager.beginTransaction(); 

    YourFragment fragment = new YourFragment(); 
    fragmentTransaction.replace(android.R.id.content, fragment);//here is the error 
    fragmentTransaction.commit(); 

但在最後一行之前的一個,編輯器會顯示錯誤說:


第二個參數錯誤type.Found:max.mzf .max.fragment.Required:android.app.fragment


這是我自己的代碼:

活動

public class QuizCard extends FragmentActivity { 

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.quiz_card); 
    FragmentManager fragmentManager = getFragmentManager(); 
    FragmentTransaction fragmentTransaction =  fragmentManager.beginTransaction(); 
    QcardFragment fragment = new QcardFragment(); 
    fragmentTransaction.replace(R.id.your_placeholder, fragment ); 
    fragmentTransaction.commit(); 
} 


@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.card_menu, menu); 

    return true; 
} 

,這是QcardFragment:


public class QcardFragment extends Fragment { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    //get data from Argument 
} 
public void onCardClick(View view) { 
    flipCard(); 
} 
private void flipCard() { 
    View rootLayout = (View) getActivity().findViewById(R.id.main_activity_root); 
    View cardFace = (View) getActivity().findViewById(R.id.main_activity_card_face); 
    View cardBack = (View) getActivity().findViewById(R.id.main_activity_card_back); 

    FlipAnimation flipAnimation = new FlipAnimation(cardFace, cardBack); 

    if (cardFace.getVisibility() == View.GONE) { 
     flipAnimation.reverse(); 
    } 
    rootLayout.startAnimation(flipAnimation); 

} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    return inflater.inflate(R.layout.qcardfragment, container, false); 

} 

@Override 
public void onViewCreated(View view, Bundle savedInstanceState) { 
    super.onViewCreated(view, savedInstanceState); 


} 
} 

怎麼了?

+0

這個問題是由@LUCIUS HIPAN的指導解決。 – mohamad

回答

1

確保您的片段類別爲android本機庫中的extends Fragment。如果使用的是外部執行嘗試改變

FragmentManager fragmentManager = getFragmentManager();

FragmentManager fragmentManager = getSupportFragmentManager(); 
+0

@mohamad看到我的P.S. –

+0

我無法得到任何東西,也許我很困惑。 – mohamad

+0

請發送QcardFragment的代碼或鏈接到它 –