Как избежать NullPointerException при использовании пользовательских Представлений или SurfaceViews

Как показано в Справочнике по языку сборки Gradle , вы можете настроить свойство idea.module.excludeDirs, имеющее тип List. Очевидно, IDEA не поддерживает включение подкаталогов исключенных каталогов, поэтому вам придется исключить всех братьев и сестер из build/generated-sources. Например:

idea {
    module {
        excludeDirs = [file(".gradle")]
        ["classes", "docs", "dependency-cache", "libs", "reports", "resources", "test-results", "tmp"].each {
            excludeDirs << file("$buildDir/$it")
        }
    }
}

Если поддерживается плагином Protocol Buffer, может быть проще поместить сгенерированные источники в место за пределами build и сделать это место известным для задачи clean (например, clean.delete "generated-sources").

1
задан Mauker 20 December 2015 в 23:11
поделиться

1 ответ

убедитесь, что вы инициализируете представление в onFinishInflate, а не в конструкторе. код предварительного просмотра макета может инициализировать ваш элемент управления через другой путь кода.

2
ответ дан 3 September 2019 в 01:27
поделиться
Другие вопросы по тегам:

Похожие вопросы: