【问题标题】:Kotlin : Cannot find symbol class Fragment or other android classesKotlin:找不到符号类片段或其他 android 类
【发布时间】:2017-10-30 01:42:04
【问题描述】:

我有一个带有 viewPager 的 java 片段..

public class FragmentWithViewPager extends Fragment {

    private class ViewPagerAdapter extends FragmentStatePagerAdapter {

        ViewPagerAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public Fragment getItem(int i) {
            Fragment fragment = new DeshFalView(); //<-- Problem here
            Bundle args = new Bundle();
            args.putInt("index", i);
            fragment.setArguments(args);
            return fragment;
        }

    }
}

现在我有另一个片段,它将填充在上面的片段中,并用 kotlin 编写,如下所示:

class DeshFalView : Fragment(), DeshfalContract.View {
    //More code...
}

我没有收到任何 lint 警告或错误,但是当我尝试运行应用程序时:

但我得到一个错误:

错误:(79, 37) 错误:找不到符号类 DeshFalView

在上面突出显示的行中.. 这两个类在同一个包中,如下所示

提前致谢...

【问题讨论】:

  • 请显示您的文件夹结构。
  • 我已经用文件夹结构编辑了

标签: java android android-fragments kotlin kotlin-android-extensions


【解决方案1】:

问题:我犯了一个愚蠢的错误,我忘记apply kotlin-android plugin

解决方案:app gradle文件上方粘贴:

apply plugin: 'kotlin-android'

【讨论】:

    【解决方案2】:

    有时即使这样,我也会遇到这种错误:

    apply plugin: 'kotlin-android'
    

    在我的应用程序 gradle 中。

    解决办法是删除app/build目录。此文件夹是自动生成的,因此删除它不会有任何问题。

    希望这会对某人有所帮助。

    【讨论】:

      猜你喜欢
      • 2017-10-01
      • 2014-12-08
      • 2016-03-02
      • 2023-01-12
      • 2017-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多