在我的Kotlin Android项目中,我使用了一个已经被弃用的函数,这个函数已经从最近的api 23开始。 所以我需要一种方法来禁用这些弃用的警告。 有没有一个简单的方法来做到这一点?
我只是将我的Java项目转换为Android中的kotlin,之后我正面临以下问题。 这并不是说错误是? Process: com.app.furr, PID: 12420 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.app.furr/com.app.furr.DashboardActivity}: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter savedInstanceState at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2817) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2892) at android.app.ActivityThread.-wrap11(Unknown Source:0) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1593) at android.os.Handler.dispatchMessage(Handler.java:105) at android.os.Looper.loop(Looper.java:164) at android.app.ActivityThread.main(ActivityThread.java:6541) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767) Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method […]
class loginViewModel(): BaseObservable() { var errorEmail:String?=null var errorPassword:String?=null var userEmailAddress:ObservableField = ObservableField() var userPassword:ObservableField = ObservableField() fun setUserEmailAddress(email:ObservableField){ this.userEmailAddress=email /* To get value of edittext enterd by user, This Updates the value of userEmail on Every LEtter Entered by User*/ notifyPropertyChanged(R.id.email_address) notifyPropertyChanged(BR.errorEmail) } } 但是得到错误 Platform declaration clash: The following declarations have the same JVM […]
存储库,可靠地重现错误:爆炸/ bug-kotlin-junit 我的Android应用程序由一个应用程序模块和4个库模块组成。 我的测试是用纯Java编写的。 不碰Kotlin代码的测试运行得很好,但是当我运行使用( MyKotlinObj::methodRef )或new MyKotlinObj() )的测试时,我的测试将失败,出现以下错误: java.lang.NoClassDefFoundError: com/explod/api/UserCreated at com.explod.api.Bug.initUserCreated_shouldNotTriggerNoClassDefFoundError(Bug.java:19) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268) at org.junit.runners.ParentRunner.run(ParentRunner.java:363) at org.junit.runner.JUnitCore.run(JUnitCore.java:137) at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68) at com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:51) at […]
我在Java和Kotlin文件中为Kotlin编写了一个Intellij插件。 以下代码适用于Java文件: val node: ASTNode …. val referencedFieldElement = node.psi.reference!!.resolve() 但是它不适用于Kotlin文件,因为没有resolve()方法调用,node.psi.reference返回null。 你如何解决Kotlin的参考? 另外我有一个PsiElement Kotlin参考。 我如何解决它的价值? 这里是一些代码: class KotlinFoldingBuilder : FoldingBuilderEx() { override fun buildFoldRegions(root: PsiElement, document: Document, quick: Boolean): Array { …. } override fun getPlaceholderText(node: ASTNode): String? { val referencedFieldElement = node.psi.reference!!.resolve() return referencedFieldElement } override fun isCollapsedByDefault(node: ASTNode): Boolean { return true } […]
我想添加数字3 EditTexts,我想显示它在文本视图与计算按钮,但是有一些错误的Kotlin代码,因为我是新手 这是我的代码: class Add : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_adsense) var input_num1 = num1 var input_num2 = numm2 var input_num3 = num3 result.setOnCLickListener { var result = input_num1.toStrubg()?.toLong() + input_num2.toStrubg()?.toLong() + input_num3.toLong()?.toString() } } }
我试图用Kotlin使用Dagger2,但今天试图编译得到这个错误: 错误:任务’:app:compileDebugJavaWithJavac’的执行失败。 错误:(5,43)错误:找不到符号类ApplicationModule_ProvideApplicationFactory (应用程序)Build.gradle apply plugin: ‘com.android.application’ apply plugin: ‘kotlin-android’ apply plugin: ‘kotlin-android-extensions’ android { compileSdkVersion 23 buildToolsVersion “23.0.3” defaultConfig { applicationId “com.ilyarb.geotags” minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName “1.0” } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(‘proguard-android.txt’), ‘proguard-rules.pro’ } } sourceSets { main.java.srcDirs += ‘src/main/kotlin’ } dexOptions { javaMaxHeapSize “2048M” } } […]
我有这个项目在Android Studio 3.0.1与kotlin支持从食物列表中选择随机食物,但我需要排除最后选定的食物。 这里是我的代码: val foodList = arrayListOf(“Chiken”, “Pizza”, “Hamburger”) decideButton.setOnClickListener { val random = Random() val randomFood = random.nextInt(foodList.count()) selectedFoodText.text = foodList[randomFood] } 谢谢
例如在Java中,我可以用LMAX disruptor做到这一点: Disruptor disruptor = new Disruptor(NetworkEvent::new, 2048, Executors.newSingleThreadedExecutor()); 在Kotlin我尝试了这个等价物: val disruptor = Disruptor({ NetworkEvent() }, 2048, Executors.newSingleThreadExecutor()) 但是我迎接这个错误:
我有一个包含以下模块的项目: 共同 共JS 共JVM 后端 卷筒纸 这个想法是我把我的共享(kotlin)代码(主要是模型)共同使用,可以在kotlin驱动的后端和javascript驱动的webapp中使用最近引入的多平台支持。 为此,我在Intelij中创建了一个新的多平台应用程序,并为其添加了后端和Web模块。 公共模块中的示例类: data class Show( val id: Long, val type: ShowType, val title: String, var description: String? = null ) 后端是一个简单的弹簧引导应用程序。 它依赖于common-jvm项目: compile project(“:common-jvm”) 现在,当我运行gradle bootRun ,应用程序启动并正常工作。 但是,当我尝试使用IntelliJ运行相同的应用程序时,出现如下错误: 错误:( kotlin.Long )Kotlin:types不匹配:推断的types是kotlin.Long但预期java.lang.Long 错误:( kotlin.String! )Kotlin:types不匹配:推断types是kotlin.String! 但预期java.lang.String 在这一行上,我尝试使用来自json源的数据创建Show模型的一个实例: val movie = Show(json.get(id).asLong(), ShowType.MOVIE, json.get(movieTitle).asText()) 我使用Kotlin 1.2.10和spring boot 1.5.9.RELEASE。 谁知道是什么原因造成的,以及如何解决? 我试图把-Xmulti-platform放在后端模块的项目结构的附加命令行参数中,但是这也不起作用。