我有一个在Kotlin文件中定义的variables,但Android Studio不建议实现方法,我是否缺少一些东西: private val mGestureListener = object : GestureDetector.SimpleOnGestureListener() { }
IDEA社区2017.1.2,JRE 1.8,Kotlin 1.1.2-2 我有位于libGdx中的Java方法,它们没有关于它们的可空性的任何注释,例如: public void render (final RenderableProvider renderableProvider) { renderableProvider.getRenderables(renderables, renderablesPool); 我们可以看到,参数不能为空。 然而,由于没有任何说明它是非空参数,Kotlin会愉快地在RenderableProvider?传递null RenderableProvider? 。 如何告诉Kotlin在编译期间检查我应该传递RenderableProvider而不是RenderableProvider? ? 我已阅读外部注释 ,但没有“指定自定义Kotlin签名”,如果我注释renderableProvider作为@NotNull没有任何更改 – kotlin仍允许为空。 我甚至试图用XML手动替换org.jetbrains.annotations.NotNull与javax.annotation.Nonnull ,但它没有什么区别 – 代码编译和NPE崩溃。
我使用最新版本的Android Studio(> 3)将自动完成function用于Toot with Kotlin。 在使用Java的旧版本中,就像输入“Toast”,然后按下键盘上的“Tab”按钮来自动完成此操作。 现在,在Android Studio> 3和Kotlin的版本中,它不起作用。 任何人都知道如何实现这个?
我有一个Kotlin数据成员类,默认的getter和setter: CurrentOrder.kt class CurrentOrder { private var currentOrderTime: String get() = currentOrderTime set(value){ currentOrderTime = value } private var currentOrderPrice: String get() = currentOrderPrice set(value){ currentOrderPrice = value } } 我想在java类中初始化: OrdersFragment.java 公共类OrdersFragment扩展片段{ RecyclerView recyclerView; ArrayList currentOrders; public OrdersFragment() { // Required empty public constructor } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) […]
我是Kotlin的新手,最近从Java中移出,在我用的是java @Override public Fragment getItem(int position) { switch (position) { case 0: Tab1Contact tab1 = new Tab1Contact(); return tab1; case 1: Tab2Contact tab2 = new Tab2Contact(); return tab2; case 2: Tab3Contact tab3 = new Tab3Contact(); return tab3; } return null; } 为选项卡式活动。 我为不同的选项卡创建3个不同的类来组织数据。 在Kotlin我无法这样做,我试过了 override fun getItem(position: Int): Fragment? { when (position) { 0 -> […]
我试图将Java代码转换为Kotlin来创建自定义匕首范围。 这里是Java代码: @Documented @Scope @Retention(RetentionPolicy.RUNTIME) public @interface CustomScope { } 一旦转换成kotlin这是结果 @Scope @Documented @Retention(RetentionPolicy.RUNTIME) annotation class CustomScope 我有一个与@Retention(RetentionPolicy.RUNTIME)types不匹配。我有以下错误信息:必需types是AnnotationRetention,但findRetentionPolicytypes。 @interface似乎已被替换。
是否有可能在android java类中使用kotlin扩展? 例: fun String.getSomething(): String { return “something” } 那么在Java中使用它就像: String someString = “blabla”; someString.getSomething(); 这可能吗?
我正在尝试在我的Kotlin Android应用程序中获得2×6(WxH)GridLayout。 我有我的XML和片段/适配器设置为一个RecyclerView,但是有点不知所措,如何应用一个GridLayout到这个。 我如何让我的项目(listview_row_enrollments.xml)显示在一个网格,而不是一个水平的列表? EnrollmentFragment.kt class EnrollmentsFragment : Fragment() { // TODO: Rename and change types of parameters private var mParam1: String? = null private var mParam2: String? = null private var mListener: OnFragmentInteractionListener? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) if (arguments != null) { mParam1 = arguments.getString(ARG_PARAM1) mParam2 = arguments.getString(ARG_PARAM2) } } […]
我只是想了解底层架构,我认为我错了。 以这里的教程为例。 当我做: kotlinc-jvm hello.kt -include-runtime -d hello.jar 如果编译器已经将代码转换为Java字节码,为什么需要将Kotlin运行时绑定到jar中?
当试图启动一个由命令行工具’create-react-kotlin-app’用’npm start’创建的应用程序时,我不断收到以下错误: kotlin-js failed. do you have kotlin installed? { “code”:”ENOENT”, “errno”:”ENOENT”, “syscall”:”spawn C:\\Users\\Aidan\\Desktop\\my-react- app\\node_modules\\kotlin-compiler\\bin\\kotlinc-js”, “path”:”C:\\Users\\Aidan\\Desktop\\my-react-app\\node_modules\\kotlin- compiler\\bin\\kotlinc-js”, “spawnargs”: [ “-output”, “C:\\Users\\Aidan\\Desktop\\my-react- app\\node_modules\\.cache\\kotlin-webpack\\kotlinApp.js”, “-source-map”, “-nowarn”, “-module-kind”, “commonjs”, “-libraries”, “C:\\Users\\Aidan\\Desktop\\my-react- app\\node_modules\\@jetbrains\\kotlin- extensions\\build\\classes\\main\\kotlin-extensions.meta.js:C:\\Use rs\\Aidan\\Desktop\\my-react-app\\node_modules\\@jetbrains\\kotlin- react\\build\\classes\\main\\kotlin- react.meta.js:C:\\Users\\Aidan\\Desktop\\my-react- app\\node_modules\\@jetbrains\\kotlin-react-dom\\ build\\classes\\main\\kotlin-react- dom.meta.js:C:\\Users\\Aidan\\Desktop\\my-react- app\\node_modules\\@hypnosphi\\kotlinx-html-js\\target\\classes\\kotlinx- html-js.meta.js”, “C:\\Users\\Aidan\\Desktop\\my-react-app\\src” ] } 我曾尝试安装Kotlin编译器,npm在全局和本地安装kotlinc-js,并搜索节点模块以查看系统正在尝试访问的文件是否存在,并且没有任何更改。 任何帮助将不胜感激,如果这是一个容易解决的问题,我提前道歉。