Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android Java返回类型错误_Java_Android - Fatal编程技术网

Android Java返回类型错误

Android Java返回类型错误,java,android,Java,Android,我是Android新手,并在线学习了一些教程。然而,自教程发布以来,片段似乎发生了变化。现在我陷入了一个我似乎无法解决的错误。我在getItem方法的返回类型上收到错误“返回类型与FragmentPagerAdapter.getItem(int)不兼容”。知道为什么吗?如果我将返回类型更改为FriendsFragment,则会得到相同的错误。如果我将返回类型更改为Fragment,那么在方法内部会出现错误。请帮忙!提前谢谢。这是我的密码: package com.erinkabbash.ribb

我是Android新手,并在线学习了一些教程。然而,自教程发布以来,片段似乎发生了变化。现在我陷入了一个我似乎无法解决的错误。我在
getItem
方法的返回类型上收到错误“返回类型与
FragmentPagerAdapter.getItem(int)
不兼容”。知道为什么吗?如果我将返回类型更改为
FriendsFragment
,则会得到相同的错误。如果我将返回类型更改为Fragment,那么在方法内部会出现错误。请帮忙!提前谢谢。这是我的密码:

package com.erinkabbash.ribbit;

import java.util.Locale;

import android.app.Fragment;
import android.app.FragmentManager;
import android.content.Context;
import android.support.v13.app.FragmentPagerAdapter;
import android.support.v4.app.ListFragment;

/**
 * A {@link FragmentPagerAdapter} that returns a fragment corresponding to
 * one of the sections/tabs/pages.
 */
public class SectionsPagerAdapter extends FragmentPagerAdapter {

    protected Context mContext;

    public SectionsPagerAdapter(Context context, FragmentManager fm) {
        super(fm);
        mContext = context;
    }

    @Override
    public InboxFragment getItem(int position) {
        // getItem is called to instantiate the fragment for the given page.
        // Return a PlaceholderFragment (defined as a static inner class
        // below).

        switch(position){
            case 0:
                return new InboxFragment();
            case 1:
                return new FriendsFragment();
        }

        return null;
    }

    @Override
    public int getCount() {
        return 2;
    }

    @Override
    public CharSequence getPageTitle(int position) {
        Locale l = Locale.getDefault();
        switch (position) {
            case 0:
                return mContext.getString(R.string.title_section1).toUpperCase(l);
            case 1:
                return mContext.getString(R.string.title_section2).toUpperCase(l);

        }
        return null;
    }
}

除非签名完全匹配,否则无法执行重写。将getItem从返回InboxFragment更改为返回Fragment。

除非签名完全匹配,否则无法执行重写。将getItem从返回InboxFragment更改为返回Fragment。

您正在返回一个类型
InboxFragment
,并在代码行内插入
return new FriendsFragment()
它不会接受它,因为它不是
InboxFragment
的一种类型,而是
Fragment
的一种类型,所以不要从
getItem
方法返回
InboxFragment
,而是将其更改为
Fragment

示例:

    public Fragment getItem(int position) {

您正在返回一个类型
InboxFragment
,并在代码行
returnnewfriendsfragment()内加int
它不会接受它,因为它不是
InboxFragment
的一种类型,而是
Fragment
的一种类型,所以不要从
getItem
方法返回
InboxFragment
,而是将其更改为
Fragment

示例:

    public Fragment getItem(int position) {

您的类是InboxFragment和FriendsFragment扩展片段(android.support.v4.app.Fragment)吗?
android.support.v4.app.Fragment
android.app.Fragment
彼此不兼容,FragmentPagerAdapter仅支持
android.support.v4.app.Fragment

试一试,它应该可以工作。

你的类在BoxFragment和FriendsFragment扩展片段(android.support.v4.app.Fragment)中吗?
android.support.v4.app.Fragment
android.app.Fragment
彼此不兼容,FragmentPagerAdapter仅支持
android.support.v4.app.Fragment


试试看,它应该能用。

你好,谢谢你的帖子!我按照你说的做了,但是在我的每一个案例都陈述了..之后,我在方法中得到了错误。。“类型不匹配:无法从InboxFragment转换为Fragment”,快速修复建议我将方法的Fragment返回类型更改为InboxFragment,这将使我回到开始的位置。@ErinSKabbash是InboxFragment extends Fragment吗?InboxFragment设置为extendListFragment@ErinSKabbash朋友分手了吗?一样。我将导入中的所有内容都更改为v4,似乎解决了这个问题。。但是现在我得到了一个错误:“构造函数FragmentPagerAdapter(FragmentManager)未定义”在super(fm)上;你好,谢谢你的帖子!我按照你说的做了,但是在我的每一个案例都陈述了..之后,我在方法中得到了错误。。“类型不匹配:无法从InboxFragment转换为Fragment”,快速修复建议我将方法的Fragment返回类型更改为InboxFragment,这将使我回到开始的位置。@ErinSKabbash是InboxFragment extends Fragment吗?InboxFragment设置为extendListFragment@ErinSKabbash朋友分手了吗?一样。我将导入中的所有内容都更改为v4,似乎解决了这个问题。。但是现在我得到了一个错误:“构造函数FragmentPagerAdapter(FragmentManager)未定义”在super(fm)上;你好,谢谢你的帖子!我删除了覆盖并更改了返回类型,但在我的每一个案例中都出现了错误。。“类型不匹配:无法从InboxFragment转换为Fragment”,快速修复建议我将方法的Fragment返回类型更改为InboxFragment,这会使我回到开始的位置。您的收件箱片段是否从Fragment派生?如果不是,你可能有大问题。如果是这样,那应该是完全合法的。InboxFragment是为了扩展ListFragment而设置的。您是否在任何地方使用支持库?我想知道它是否把3.x片段和支持片段混在一起了。从你们的进口来看,很有可能。在任何地方都使用1或其他类型,它们不能混合。当所有其他类型都是v4时,我有一个v13!接得好。现在我得到这个错误“构造函数FragmentPagerAdapter(FragmentManager)未定义”您好,谢谢您的帖子!我删除了覆盖并更改了返回类型,但在我的每一个案例中都出现了错误。。“类型不匹配:无法从InboxFragment转换为Fragment”,快速修复建议我将方法的Fragment返回类型更改为InboxFragment,这会使我回到开始的位置。您的收件箱片段是否从Fragment派生?如果不是,你可能有大问题。如果是这样,那应该是完全合法的。InboxFragment是为了扩展ListFragment而设置的。您是否在任何地方使用支持库?我想知道它是否把3.x片段和支持片段混在一起了。从你们的进口来看,很有可能。在任何地方都使用1或其他类型,它们不能混合。当所有其他类型都是v4时,我有一个v13!接得好。现在我得到了这个错误“构造函数FragmentPagerAdapter(FragmentManager)未定义”,我在导入中将所有内容都更改为v4,似乎解决了这个问题。。但是现在我得到了一个错误:“构造函数FragmentPagerAdapter(FragmentManager)未定义”在super(fm)上;Line如果是android.app.ListFragment,则使用android.support.v4.app.ListFragment。v4是为了支持在冰激凌三明治出现之前构建的应用程序而开发的。使用android.support.v4.app.FragmentManager。如FragmentManager FragmentManager=mActivity.getSupportFragmentManager();谢谢,这是我的最后一期。非常感谢。那是不是意味着。。我是