Противоречивость импорта, импортированное имя «Тост» неоднозначно - PullRequest
0 голосов
/ 18 декабря 2018

Я пытаюсь запустить сборку на Circle CI, но сталкиваюсь с этой неоднозначной ошибкой контрольного стиля в Android Kotlin, у меня нет никакой идеи, почему это происходит, ниже приведена ошибка:

/home/circleci/repo/app/src/main/java/com/andela/mrm/util/ConvergeUIUtils.kt: (12, 23): Конфликт импорта, импортированное имя «Тост» является неоднозначным e: / home / circleci /repo / app / src / main / java / com / andela / mrm / util / ConvergeUIUtils.kt: (14, 23): конфликт импорта, импортированное имя 'Toast' неоднозначно

Ниже приведенConvergeUIUtils.kt file:

import android.content.Context
import android.graphics.Color
import android.graphics.PorterDuff
import android.support.constraint.ConstraintLayout
import android.support.design.widget.Snackbar
import android.support.v4.content.ContextCompat
import android.view.Gravity
import android.view.View
import android.widget.TextView
import android.widget.Toast
import com.andela.mrm.R


/**
 * Important methods for the application UI.
 */
class ConvergeUIUtils
/**
 * Private constructor to prevent instantiation.
 */
private constructor() {
    init {
        throw UnsupportedOperationException()
    }

    companion object {
        /**
         * Show snackbar with edited properties.
         *
         * @param context the view context.
         * @param view the view to display the snackbar.
         * @param string the message to be displayed.
         */
        fun showSnackBar(context: Context, view: View, string: String) {
            val snackbar = Snackbar.make(view, string, Snackbar.LENGTH_LONG)
            val snackbarView = snackbar.view
            snackbarView.setPadding(10, 10, 10, 12)
            if (string.contains("extended")) {
                snackbarView.setBackgroundColor(ContextCompat.getColor(context, R.color.waiting_color))
            } else {
                snackbarView.setBackgroundColor(ContextCompat.getColor(context,
                        R.color.colorPrimaryDark))
            }
            snackbar.show()
        }

        /**
         * @param context the view context.
         * @param string the message of the toast.
         */

        fun showToast(context: Context, string: String) {
            val toast = Toast.makeText(context, string, Toast.LENGTH_LONG)
            toast.setGravity(Gravity.BOTTOM or Gravity.LEFT, 50, 50)
            val view = toast.view

            if (string.isNullOrBlank()) {

                view.setBackgroundResource(R.drawable.notification_success_img)
                toast.show()
            } else {

                if (string.contains("extended")) {
                    view.background.setColorFilter(ContextCompat.getColor(context, R.color.waiting_color),
                            PorterDuff.Mode.SRC_IN)
                    val text = view.findViewById<TextView>(android.R.id.message)
                    text.setTextColor(Color.WHITE)
                } else {
                    view.background.setColorFilter(ContextCompat.getColor(context,
                            R.color.colorPrimaryDark), PorterDuff.Mode.SRC_IN)
                }
                val text = view.findViewById<TextView>(android.R.id.message)
                text.setTextColor(Color.WHITE)
                toast.show()
            }

        }


        /**
         * set background color for free time button.
         *
         * @param context the view context.
         * @param freeDisplay the free time button.
         */
        fun setButtonColor(context: Context, freeDisplay: ConstraintLayout) {
            val normalDrawable = context.getDrawable(R.drawable.btn_room_extra_time)
            normalDrawable!!.setColorFilter(-0x1, PorterDuff.Mode.SRC_ATOP)
            freeDisplay.background = normalDrawable
        }

    }
}

Как мне преодолеть эту ошибку контрольного стиля?

Это изображение ошибки.

enter image description here

1 Ответ

0 голосов
/ 18 декабря 2018

В импорте есть несколько классов с именем Toast.

Kotlin поддерживает псевдоним для импорта: https://kotlinlang.org/docs/reference/packages.html

import android.widget.Toast as WToast
...