我创建了一个函数,但是在return语句中出现错误,为什么?

import android.app.Fragment;
@Override
public android.support.v4.app.Fragment getItem(int position) {

    Bundle bundle = new Bundle();
    bundle.putString(DeviceFragment.DescriptionKey,deviceDescription[position]);
    bundle.putInt(DeviceFragment.ImageIDKey, getDeviceImageID(position));

    DeviceFragment deviceFragment = new DeviceFragment();
    deviceFragment.setArguments(bundle);

    return deviceFragment;


错误:

Error:(38, 16) incompatible types
found   : com.example.sergiumereuta.swipeviewtest.DeviceFragment
required: android.support.v4.app.Fragment

最佳答案

我认为是因为您正在使用Fragment,并且同时支持Fragment。

如果您覆盖android.app.Fragment getItem(int position)而不是android.support.v4.app.Fragment getItem(int position)。

可能是因为DeviceFragment扩展了android.app.Fragment而不是android.support.v4.app.Fragment

10-08 03:02