所以我想在Android中使用我的RecyclerView的onclicklistener ,但我不知道该怎么做。 我有一个CustomAdapterClass用于我的Workoutlist ,如下所示: class CustomAdapter(val workoutList: ArrayList) : RecyclerView.Adapter() { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): CustomAdapter.ViewHolder { val v = LayoutInflater.from(parent.context).inflate(R.layout.list_layout, parent, false) return ViewHolder(v) } override fun onBindViewHolder(holder: CustomAdapter.ViewHolder, position: Int) { holder.bindItems(workoutList[position]) } override fun getItemCount(): Int { return workoutList.size } class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { fun bindItems(workout: workout) { […]
我是PlayFramework的粉丝,但是我对SBT / Scala的经验有限。 我一直在努力使用Kotlin,所以我试图让Kotlin在SBT / PlayFramework上运行。 我使用了Gradle Build系统的Kotlin,但是这需要我应用Kotlin Gradle插件。 不知道如何做SBT的等价物。 这里是你的Play基本build.sbt。 我将如何去添加Kotlin? name := “””KotlinTestServer””” version := “1.0-SNAPSHOT” lazy val root = (project in file(“.”)).enablePlugins(PlayJava) scalaVersion := “2.11.1” libraryDependencies ++= Seq( javaJdbc, javaEbean, cache, javaWs ) 我必须添加”org.jetbrains.kotlin” % “kotlin-stdlib” % “0.10.195”作为库依赖项,但还有什么?
大段引用 如何开始使用Android的KTX。
假设我有一个函数在下面测试,在名为“Utils.kt”的文件中声明 //Utils.kt fun doSomething() = 1 然后我们创建一个测试类来测试它 //UtilsTest.kt @RunWith(JMockit::class) class UtilsTest { @Test fun testDoSomething() { object : Expectation() { init { doSomething() result = 2 } } assertEquals(2, doSomething()) } } 我想嘲弄doSomething ,使它返回2 ,但它不会工作,实际结果是1 有没有解决方法?
开始时,ImageView是水平居中的。 我把视图移到Kotlin的左边。 应用后,ImageView消失。 我没有任何线索来调试这个问题 override fun onViewCreated(view: View, savedInstanceState: Bundle?){ super.onViewCreated(view, savedInstanceState) applyConstraintSet.clone(vConstraint) } private fun startAnimation() { applyConstraintSet.setHorizontalBias(R.id.ivAvatar, 0.2F) val transition = AutoTransition() transition.duration = 1500 transition.interpolator = AccelerateDecelerateInterpolator() TransitionManager.beginDelayedTransition(vConstraint, transition) applyConstraintSet.applyTo(vConstraint) } XML
我想能够从它的伴侣对象访问我的类的simpleName。 我想这样做: val o1 = Outer(“foo”) val o2 = Outer(“bar”) 打印下面的输出: Outer: hello Outer: foo Outer: bar 在java中的实际用例是这样的: class Outer { static final String TAG = Outer.class.simpleName(); // and now I’m able to use Outer.TAG or just TAG in both static and non-static methods } 我尝试了两件事情: 将Outer的simpleName赋值给伴随对象的COMPANION_TAG,然后使用伴侣的init中的COMPANION_TAG和遍历Outer的所有函数。 我可以从我需要的任何地方访问COMPANION_TAG,但不幸的是,我只能通过这种方式获得“伴侣”而不是“外”。 从伴侣对象的init访问Outer.OUTER_TAG。 这里的问题是,我无法find访问它的方式。 代码如下: class Outer(str: String) { […]
如何检查我的活动是否在MultiWindowMode中 。 我已经使用Myactivity.isInMultiWindowMode()和MYactivity.isInPictureInPictureMode() ,但显示错误 由于MultiWindow无法识别,是否需要扩展? 关于多窗口,我已经经历了其他的职位,但没有希望
我有一个日期选择器对话框。 我只想显示日月。 年份选取器对话框必须隐藏。 我已经尝试了这样的其他答案。 没有什么对我有用。 它也应该支持Kitkat到牛轧糖设备。 我的日期选择器代码如下。 fun setDatePickerDialog() { mDobDialog = DatePickerDialog(this@SignUpActivity, R.style.VDDatePickerDialogTheme, DatePickerDialog.OnDateSetListener { view, year, monthOfYear, dayOfMonth -> val newDate = Calendar.getInstance() newDate.set(year, monthOfYear, dayOfMonth) //dob_textview.setText(“($dayOfMonth) ($monthOfYear) ($year)”) val dateFormat = SimpleDateFormat(VDAppConstants.DOB_DISPLAY_FORMAT) dob_textview?.setText(dateFormat.format(newDate.time)) }, mNewCalendar.get(Calendar.YEAR), mNewCalendar.get(Calendar.MONTH), mNewCalendar.get(Calendar.DAY_OF_MONTH)) mNewCalendar.set(1978, mNewCalendar.get(Calendar.MONTH), mNewCalendar.get(Calendar.DAY_OF_MONTH)) mDobDialog?.datePicker?.maxDate = mNewCalendar.timeInMillis } 以下代码仅适用于Kitkat设备,但不适用于牛轧糖设备。 val mDobDialog = DatePickerDialog(this@MainActivity, android.R.style.Theme_Holo_Dialog, DatePickerDialog.OnDateSetListener { […]
我正在为一个站点编写自动化测试。 有一个页面,所有的项目添加到购物车。 最大的项目是58.而不是validation每个元素一个接一个我决定创建2个arrays填充strings :1与正确的名称: String和1名称: String我从网站。 然后我将这两个数组与contentEquals进行比较。 如果这种比较失败了,我怎么知道究竟哪个元素导致了比较失败? 简单的我现在有什么: @Test fun verifyNamesOfAddedItems () { val getAllElementsNames = arrayOf(materials.text, element2.text, element3.text…) val correctElementsNames = arrayOf(“name1”, “name2”, “name3″…) val areArraysEqual = getAllElementsNames contentEquals correctElementsNames if (!areArraysEqual) { assert(false) } else { assert(true) } } 如果2个数组不一致,但是它不会显示细节,那么有没有办法看到更多的失败细节,例如失败的比较元素? 谢谢。
我有一个这样的interface : interface FontRegionTransformer { fun transform(region: R, textCharacter: TextCharacter): R } 我不是类别理论方面的专家,但是正如我以前学过的,这个结构是一个monoid (是吗?) ,我可以将任何数量的带R和返回R的函数结合起来。 这就是我现在所拥有的: var image = source.getSubimage(meta.x * width, meta.y * height, width, height) regionTransformers.forEach { image = it.transform(image, textCharacter) } 这工作,但我有一个问题:如何将FontRegionTransformer List组合到单个函数? 我可以做到这一点,而不添加一个composefunction到我的界面? 我尝试reduce但没有点击。 澄清:我想实现的是将存储在regionTransformers的函数regionTransformers成一个函数,而不是循环: var image = source.getSubimage(meta.x * width, meta.y * height, width, height) regionTransformers.forEach { image = it.transform(image, […]