小编Kar*_*430的帖子

Kotlin / Java 在 Int 类型的 switch 语句中使用枚举

对于 Android 项目,我有一个 .kt 文件:

class foo () {
    enum class animal (var Id: Int) {
        CAT(0),
        DOG(1),
        FISH(2),
    }
}
Run Code Online (Sandbox Code Playgroud)

还有一个 .java 文件,其中出现问题:

public void processAnimal(int animalId) {
    switch(animalId) {
        case foo.animal.CAT.Id:
            //do something
            break;
        case foo.animal.DOG.Id:
            //do something else
            break;
        case foo.animal.FISH.Id:
            //do something fishy
            break;
    }
}
Run Code Online (Sandbox Code Playgroud)

.Id给出了一个错误“Id has private access in foo.animal”,所以这不起作用。

由于 switch 语句,更改.Id为“需要常量表达式”。.getId()

这是我无法控制的要求,而不是int签名animal中的类型public void processAnimal(int animalId) {,如果它不是我无法控制的,这将是正确的解决方案。

在 .kt 文件中将字段标记为公共不会改变任何内容。

有没有办法实现我打算做的事情?

谢谢你!

java kotlin

3
推荐指数
1
解决办法
6628
查看次数

React Native Flipper 插件未安装 OSX

我已经安装了 React Native Flipper。我进入插件管理器,安装插件,搜索 redux-debugger,安装 1.2.2,重新加载,发现插件处于禁用状态,不小心单击了 bin 图标并将其删除。然后我又回去安装了,现在每次都会安装,当我重新加载时,它就消失了。如果我查看 ~/.flipper/installed-plugins,安装后,目录 Flipper-plugin-redux-debugger 存在,直到我重新加载,该目录就会消失。

我已采取的修复步骤:删除 ~/.flipper 并重新开始。这没有帮助。为什么插件只安装一次,再也不会安装?

谢谢。

macos plugins flipper react-native

2
推荐指数
1
解决办法
1745
查看次数

M1 Mac React Native 应用程序模拟器 Xcode 未返回有效的 pid 或启动错误

Application launch for 'au.com.appname' did not return a valid pid nor a launch error. Domain: NSPOSIXErrorDomain Code: 3 Failure Reason: No such process User Info: { DVTErrorCreationDateKey = "2022-01-25 12:02:41 +0000"; IDERunOperationFailingWorker = IDELaunchiPhoneSimulatorLauncher;

我刚刚工作时得到了一台 M1 Mac。我还没有安装Rosetta。我不想安装 Rosetta。我设法安装了所有 pod,并将 arm64 添加到 Xcode 中 Pods 项目的排除架构中,该应用程序在模拟器上构建并安装,但当它在模拟器上打开时,它立即关闭,并且 Xcode 显示上述错误。有什么我忘记做的事情吗?

谢谢

xcode ios react-native apple-m1

1
推荐指数
1
解决办法
3756
查看次数

标签 统计

react-native ×2

apple-m1 ×1

flipper ×1

ios ×1

java ×1

kotlin ×1

macos ×1

plugins ×1

xcode ×1