接收器类型与 Anko 布局不匹配

Receiver Type Mismatch with Anko Layouts

我正在尝试在我的支持 v4 片段中​​使用 Anko DSL 创建布局,但 IDE 显示接收器类型不匹配。 DSL 在 v7 AppCompatActivity 中工作正常。为了让它工作,我已经更新到 Android Studio 3.0。我还按照其他一些线程的建议更新了 build.gradle 中的依赖项。

这是我的应用 build.gradle

中的依赖项
dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')

    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile 'com.android.support:appcompat-v7:25.4.0'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.support:design:25.4.0'
    compile 'com.android.support:support-v4:25.4.0'
    compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
    compile "org.jetbrains.anko:anko:$anko_version"
    compile "org.jetbrains.anko:anko-appcompat-v7-commons:$anko_version"
    compile "org.jetbrains.anko:anko-appcompat-v7:$anko_version"
    compile "org.jetbrains.anko:anko-support-v4-commons:$anko_version"
    compile "org.jetbrains.anko:anko-support-v4:$anko_version"
}

以及项目 build.gradle

中的依赖项
dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0'
    classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
    classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version"
}

这个问题我也看到了

但我还是卡住了。

DSL works ok from the v7 AppCompatActivity

并且在屏幕截图中的候选列表中,您可以看到它被定义为 Activity 上的扩展函数,并且 AppCompatActivityActivity

您的接收器 (this) 是 HomeAdapter,它不会扩展 ActivityContextViewManager

如果你调用context.verticalLayout它会编译,但我不知道结果是否是你想要的。