我有一个片段:
ProductsFragments extends Fragment
和一个活动
AdminMenuActivity extends ActionBarActivity
我想从AdminMenuActivity调用ProductsFragments。我使用了两个选项:
1)
FragmentManager fm = getSupportFragmentManager();
for(int i = 0; i < fm.getBackStackEntryCount(); ++i) {
fm.popBackStack();
}
FragmentTransaction tx = getSupportFragmentManager().beginTransaction();
tx.replace(R.id.frame_layout, android.support.v4.app.Fragment.instantiate(AdminMenuActivity.this, fragments[1]));
tx.commit();
2)
Intent intent1 = new Intent(AdminMenuActivity.this, ProductsActivity.class);
startActivity(intent1);
两者都失败了。我不想用FragmentActivity扩展ProductsFragments,因为它没有给我supportActionBar v7
那么如何致电Fragment
?
答案 0 :(得分:6)
以下是从Activity
中调用片段的方法The boys ____ to the store to ___ up some groceries
假设您有fragment_place代表以下内容:
SELECT * FROM "Questions" WHERE "questionText" LIKE '%_%_%'
答案 1 :(得分:0)
如果您得到
第二个参数类型错误。找到:“ android.support.v4.app.Fragment”, 必需:“ android.app.Fragment”
此错误,请检查导入,您可能会发现以下内容,
import android.app.FragmentManager;
import android.app.FragmentTransaction;
删除上述导入。
将getFragmentManager()
更改为getSupportFragmentManager()
FragmentManager fragmentManager=getFragmentManager(); to
FragmentManager fragmentManager=getSupportFragmentManager();
现在我们可以导入了,
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
答案 2 :(得分:-2)
我会使用以下方法来获得所需的结果:
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.add(YourFragment.newInstance(), null);
ft.commit();
通过执行此操作,您将添加片段的实例。 希望这会有所帮助。