从活动Kotlin获得额外的字符串

我想从意图的另一个活动中获得额外的字符串。 这是创建我的意图的方式 val intent = Intent(this, Main2Activity::class.java) intent.putExtra(“samplename”, “abd”) startActivity(intent) 我怎样才能在另一个活动中获得这个意图的价值

春季启动ThymeLeaf和Kotlin – checkbox值没有被传递给控制器​​?

我正在尝试使用Spring Thymeleaf和Kotlin来提供HTML页面。 我希望它能够传递我按下“提交”时选择的HTML页面上的所有值,然后将所有提交内容存储到订单列表中。 class Order(val nameForTheOrder: String, val items: Map, val totalCost: BigDecimal) 控制器: @Controller class OrderController { @Autowired lateinit var orderService: OrderService @RequestMapping(“/orderHistory”) fun listOfOrders(model: Model) : String { model.addAttribute(“orderHistory”, orderService.getOrders()) return “orderHistory” } @RequestMapping(“/order/{nameForTheOrder}”) fun findOrder(@PathVariable(“nameForTheOrder”) orderId: String, model: Model) : String { model.addAttribute(“order”, orderService.findOrderbyId(orderId)) return “order” } @RequestMapping(value=”/order”, method = arrayOf(RequestMethod.POST)) fun […]

Java / Kotlin使用generics返回types为访问者模式强制转换exception

我试图使用类似访问者模式, 但与返回值。 但是,虽然没有明确的转换,但我得到一个ClassCastException: Exception in thread “main” java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.CharSequence; at Printer.combine(…) at Split.accept(…) at MWEKt.main(…) 码: interface TreeElem { fun accept(visitor: TreeVisitor): T } class Leaf: TreeElem { override fun accept(visitor: TreeVisitor): T { return visitor.visit(this) } } class Split(val left: TreeElem, val right: TreeElem): TreeElem { override fun accept(visitor: […]

Kotlin在variables声明之后分配委托

所以,基本上我有一个class级: class App : Application() { lateinit var prefs: SharedPreferences } 现在,我想添加一个委托属性: var isInitialized: Boolean by prefs.boolean() 问题是这个, isInitialized属性必须被懒惰地初始化,因为我使用的是Android Dagger2框架,它在App创建之后执行注入(在调用onCreate()方法期间): class App : Application() { lateinit var prefs: SharedPreferences var isInitialized: Boolean = false override fun onCreate() { super.onCreate() // how can I assign a delegate to isInitialized? } } 我希望通过以下方式来完成: 在声明中的懒惰初始化(这是委托在委托 – 怀疑这是否可能?) 在赋值期间延迟初始化 […]

Kotlin setOnclickListener按钮不起作用

你好我有一个问题点击按钮 fun mainPage(view: View) { val intent = Intent(applicationContext, MainActivity::class.java) intent.putExtra(“input”, userText.text.toString()) startActivity(intent) } //second button started in here singupButton.setOnClickListener { fun crtUser (view: View) { val intent = Intent(applicationContext,createUser::class.java) startActivity(intent) } } 但我的按钮不工作。 我的问题在哪里?

如何访问kotlin中的数据列表数据

我有: var itemOrder = ArrayList() 文件模型Order.kt: private var itemName:String? = null private var note:String? = null private var price: CharSequence? = null private var all: Int? = null private var quantity: Int? = null fun Order(itemName: String, price: CharSequence, all: Int, note: String, quantity: Int) { this.itemName = itemName this.price = price this.all = all […]

在Kotlin中调用操作符&运算符重载

我了解了Invoke操作符, a()相当于a.invoke() 有什么更多关于调用操作员,然后请解释。 此外,我没有得到任何Invoke运算符重载的例子。 调用操作符是否可以重载? 如果可能的话,任何人都可以请示例解释有关Invoke操作符重载。 我没有得到任何关于这个。 提前致谢。

在Kotlin中使用数据类的特征?

我有两个模型对象/ DTO定义为数据类 public data class ModelA(val limit: Int, val offset: Int, val someDataA: DataAlpha) public data class ModelB(val limit: Int, val offset: Int, val someDataB: DataBeta) 我想概括分页的基础上像Paginable特质: trait Paginable { var limit: Int var offset: Int } 但是让ModelA实现Paginable会导致一个错误: 错误:“偏移量”隐藏超types“可分页”的成员,并需要“覆盖”修饰符 添加覆盖 : public data class ModelB(override val limit: Int, override val offset: Int, val someDataB: DataBeta) […]

Kotlin Voice Record上传覆盖Firebase

你好guyi写一些代码,以获取音频记录保存在firebase。 它的工作,但始终保存同名,所以导致覆盖。 我怎样才能解决这个问题 ? mFileName = externalCacheDir!!.absolutePath mFileName += “/recorded_audio.3gp” private fun startRecording() { mRecorder = MediaRecorder() mRecorder!!.setAudioSource(MediaRecorder.AudioSource.MIC) mRecorder!!.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP) mRecorder!!.setOutputFile(mFileName) mRecorder!!.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB) try { mRecorder!!.prepare() } catch (e: IOException) { Log.e(LOG_TAG, “prepare() failed”) } mRecorder!!.start() } private fun stopRecording() { mRecorder!!.stop() mRecorder!!.release() mRecorder = null uploadAudio() } private fun uploadAudio() { val filepath = mStorage!!.child(“Audio”).child(“new_audio.3gp”) val […]

MyObjectBox不是在kotlin(objectbox库)中生成的

我正在尝试使用对象库。 我阅读官方文档并按照说明进行操作。 但是,它仍然不工作。 问题是当我尝试初始化boxStore对象,我没有findMyObjectBox类。 val boxStore = MyObjectBox.builder().androidContext(this).build() 这是我的应用程序模块。 build.gradle(应用程序模块) apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ apply plugin: ‘kotlin-kapt’ apply plugin: ‘io.objectbox’ android { compileSdkVersion 26 defaultConfig { …. } buildTypes { release { …. } } sourceSets { main.java.srcDirs += ‘src/main/java’ } } kapt { generateStubs = true arguments { arg(“objectbox.debug”, […]