java - fragment 不兼容的类型

标签 java android android-fragments

Activity继承了ActoinBarActivity,它描述了侧边栏(NavigationDrawer),通过点击它的元素打开 fragment 。在其中一个 fragment 中有 listView,通过单击我要打开另一个 fragment 的项目(员工 - 员工列表 - 员工数据)。但是我是一个错误

Incompatible types: Required: Android.app.Fragment Found:com.abc.app.EmployeeDetails

public class MyEmployeeFragment extends Fragment {
//some code
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
    userList = new ArrayList<User>();
    sAdapter = new CustomAdapter(getActivity(),userList);
    View rootView = inflater.inflate(R.layout.my_employe, container, false);
    ListView lv = (ListView)rootView.findViewById(R.id.list);
    lv.setAdapter(sAdapter);

    lv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view,
        int position, long id) {
            Fragment f = new EmployeeDetails(); // ERROR
            FragmentManager fragmentManager = getFragmentManager();
            FragmentTransaction ft = fragmentManager.beginTransaction();
            ft.replace(R.id.content_frame, f);
            ft.commit();
            Log.i("TAG", "itemClick: position = " + position + ", id = "
            + id);
        }
    });

员工详细信息

public class EmployeeDetails extends Fragment {



    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        // Inflate the layout for this fragment
        return inflater.inflate(R.layout.fragment_employee_details, container, false);
    }


}

Answer is:

所有 fragment 必须import android.app.Fragment; 而不是android.support.v4.app.Fragment;

最佳答案

在您的类 EmployeeDetails 声明中,执行以下操作:

public class EmployeeDetails extends Fragment {
......

并使用import android.app.Fragment;

不使用import android.support.v4.app.Fragment;

关于java - fragment 不兼容的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24083788/

相关文章:

java - 查找给定范围内的所有素数

java - setText 方法不适用于 Java 中的 javax.swing.JLabel

Android Activity 和 Fragment 之间的通信

java - 如何检索mysql数据库中的数据。安卓工作室

java - 如何创建一个方法来测量执行一个方法所花费的时间

java - 如何从主程序访问重绘?

Android/Sdk/build-tools/22.0.1/aapt'' 以非零退出值 1 完成

java - 窗口回调 onMenuOpened 和 onPanelClosed 用于随工具栏膨胀的菜单

android - 如何在我的 Android 设备上禁用已安装的 Google Play 服务版本?

android - 如何使android库使用权限可选而不是必需的