【发布时间】:2018-12-18 15:26:42
【问题描述】:
我正在尝试在 Circle CI 上运行构建,但在 android kotlin 中面临这个模棱两可的 checkstyle 错误,我不知道为什么会发生这种情况,下面是我遇到的错误:
/home/circleci/repo/app/src/main/java/com/andela/mrm/util/ConvergeUIUtils.kt: (12, 23): Conflicting import, imported name 'Toast' is ambiguous e: /home/circleci/repo/app/src/main/java/com/andela/mrm/util/ConvergeUIUtils.kt: (14, 23): Conflicting import, imported name 'Toast' is ambiguous
以下是
ConvergeUIUtils.kt文件: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 } } }我怎样才能克服这个 checkstyle 错误?
这是错误的图片。
【问题讨论】:
-
MCVE,好吗?
-
您的导入有多个名为
Toast的类。您必须使用Toast和包名,例如android.widget.Toast.makeText() -
@VladyslavMatviienko,我试过了,但它带来了同样的错误。
标签: java android kotlin checkstyle