#java #android #android-studio #kotlin
Вопрос:
Поэтому я недавно начал изучать Kotlin и следовал учебнику для Android Studio на языке Java. В конце концов я преобразовал файл Java в Kotlin с помощью Android Studio.
Фрагмент кода Kotlin:
Ошибка компиляции:
Как я могу исправить эту ошибку?
Комментарии:
1. пожалуйста, разместите всю соответствующую информацию в самом вопросе
2. Прости! это мой первый пост, и я не знал, что изображения будут выглядеть так. Я запомню это в следующий раз, когда буду задавать вопрос.
3. при публикации кода или сообщений об ошибках не публикуйте изображения. опубликуйте фактический код и текст ошибки в виде форматированного текста
4. Примечание. Вы можете отредактировать сообщение и заменить изображения кодом.
5. Я также советую использовать учебник на основе Kotlin вместо учебника на основе Java, потому что обычно такой код не пишется в Kotlin (хотя его можно заставить работать).
Ответ №1:
Я бы предложил вам разместить код в самом сообщении. Приходим к ошибке. Давайте посмотрим ваш код. У вас есть различные свойства, присвоенные null, как это. Давайте рассмотрим один из них.
var splashImg: ImageView? = null
Ошибка, которую вы получаете, подразумевает, что, поскольку это свойство может быть аннулировано, нет никакой гарантии, что при попытке доступа оно все еще является ImageView
, а не просто null.
Ответ прост, то есть добавить для них нулевую проверку. Для этого у котлина есть оператор безопасного вызова, который называется ?.
Поэтому, когда вы пытаетесь получить доступ к собственности, получите доступ к ней следующим образом. Это гарантирует, что он получит доступ к нему только в том случае, если он не равен нулю. Вы также можете поставить обычную if-else
splashImg?.animate()...