我正在处理带有两个不同片段的导航抽屉。不起作用的是下面的java文件中的“ first”和“ second”fragmentManager.beginTransaction().replace(R.id.fragment, first).commit();以及另一行中的“ ”和“ ” 。它引发的错误是:
Wrong 2nd argument type. Found: 'com.example.name_of_app.First', required: 'android.support.v4.app.Fragment'
replace
(int,
android.support.v4.app.Fragment)
in FragmentTransaction cannot be applied
to
(int,
com.example.name_of_app.First)
引发问题的 MainActivity.java 文件部分:
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_camera) {
setTitle("First Fragment");
First first = new First();
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.fragment, first).commit();
} else if (id == R.id.nav_gallery) {
setTitle("Second Fragment");
Second second = new Second();
FragmentManager fragmentManager = getSupportFragmentManager();
fragmentManager.beginTransaction().replace(R.id.fragment, second).commit();
}
这是 First.java 片段
import android.os.Bundle;
import android.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
/**
* A simple {@link Fragment} subclass.
*/
public class First extends Fragment {
public First() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_first, container, false);
}
}
慕的地10843
相关分类