小编Ale*_*ica的帖子

IntelliJ显示使用方法参数提示 - 如何禁用它

我是IntelliJ的新手,最近更新为IntelliJ-2016.3.
在Java代码的编辑器中,它显示了使用时的方法签名.如何禁用此功能?

以下是方法签名及其调用站点的示例: 在此输入图像描述

方法调用:
在此输入图像描述

2016.1.4版本中没有此行为.我在更新后看到了这个.
任何帮助表示赞赏!

java intellij-idea

214
推荐指数
8
解决办法
5万
查看次数

结构声明结束时这[1]的目的是什么?

我正在窥探我的MSP430微控制器的头文件,我遇到了这个<setjmp.h>:

/* r3 does not have to be saved */
typedef struct
{
    uint32_t __j_pc; /* return address */
    uint32_t __j_sp; /* r1 stack pointer */
    uint32_t __j_sr; /* r2 status register */
    uint32_t __j_r4;
    uint32_t __j_r5;
    uint32_t __j_r6;
    uint32_t __j_r7;
    uint32_t __j_r8;
    uint32_t __j_r9;
    uint32_t __j_r10;
    uint32_t __j_r11;
} jmp_buf[1]; /* size = 20 bytes */
Run Code Online (Sandbox Code Playgroud)

我知道它声明了一个匿名结构和typedef它jmp_buf,但我无法弄清楚它是什么[1].我知道它声明jmp_buf是一个有一个成员(这个匿名结构)的数组,但我无法想象它用于什么.有任何想法吗?

c struct typedef reverse-engineering declaration

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

XOR和NOT-EQUAL-TO之间有什么区别?

我的问题使用Java作为例子,但我想它可能适用于所有.

在比较布尔值时,XOR运算符(在java中是^)和NOT-EQUAL-TO(在java中是!=)之间是否存在实际差异?

我在这里评估了一些东西,但我一直在想(似乎很奇怪,两件事情相等)......并且没有在网上找到任何东西.在一些论坛中只有一次讨论快速结束而没有任何结果.

evaluation boolean xor

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

SwiftUI 3 中的 .onAppear() 和 .task() 有什么区别?

看来我们现在可以在 iOS 15 中onAppear(action:)task(priority:action:)在 iOS 15 中执行相同的任务。但是,我找不到task(priority:action:)onAppear(action:). 有谁能解释一下吗?

swift swiftui

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

Swift 3从Int转换为String

在Swift 3中,该String结构似乎没有init(_: Int)允许从Inta 转换为a 的初始化程序String.我的问题是为什么let i = String(3)有效?String它调用什么方法或初始化程序?谢谢.

string swift3

11
推荐指数
3
解决办法
3万
查看次数

获取堆上对象的大小(以字节为单位)

我知道你可以MemoryLayout<T>.size用来获得一个类型的大小T.

例如: MemoryLayout<Int32>.size // 4

但是,对于类实例(对象),MemoryLayout<T>.size返回对象的引用大小(64位计算机上的8个字节),而不是堆上实际对象的大小.

class ClassA { // Objects should be at least 8 bytes
    let x: Int64 = 0
}

class ClassB  {// Objects should be at least 16 bytes
    let x: Int64 = 0
    let y: Int64 = 0
}

MemoryLayout<ClassA>.size // 8
MemoryLayout<ClassB>.size // 8, as well :(
Run Code Online (Sandbox Code Playgroud)

如何获得物体的大小?

对于那些想知道的人,我没有真正的需要,我只是在探索Swift及其与C的互操作性.

heap-memory memory-layout dynamic-allocation swift

10
推荐指数
2
解决办法
5043
查看次数

如何在 GraphQL 模式中定义空对象类型?

我想在模式中指定我的 GraphQL API,但我也想将我的模式分布在多个文件中。我希望能够使用extend type Queryextend type Mutation向整个架构添加查询或突变。比如我的user.graphql文件如下:

type User {
    id: ID!
    name: String!
    email: String!
}

type UserResult {
    success: Boolean!
    errors: [String]
    user: User
}

extend type Query {
    user(userId: ID!): UserResult!
}
Run Code Online (Sandbox Code Playgroud)

对象Query类型在不同的文件中定义schema.graphql

schema {
    query: Query
    mutation: Mutation
}

type Query {
    dummyField: Boolean
}
Run Code Online (Sandbox Code Playgroud)

当我的应用程序启动时,这些文件将被合并以生成完整的 API 架构。

因为type Query我已经包含了 a ,dummyField因为我无法定义一个空的对象类型(没有字段的对象类型)而不出现错误。以下几行:

type Query {}
Run Code Online (Sandbox Code Playgroud)

type Query {
}
Run Code Online (Sandbox Code Playgroud)

抛出如下错误:

第988行,在expect_token …

graphql

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

不能使用故事板自定义实例化窗口控制器

尝试从故事板自定义实例化窗口控制器时,我感觉像是一个错误。我正在使用NSStoryboard.instantiateController(identifier:creator:),这是 MacOS 10.15 的新功能。有问题的代码块是:

let mainWC = storyboard.instantiateController(identifier: "id") { aDecoder in  
    MainWindowController(coder: aDecoder)  
} 
Run Code Online (Sandbox Code Playgroud)

我基本上成功地使用了这个确切的代码来自定义实例化主视图控制器,并将该视图分配给一个新窗口和一个新窗口控制器。这很好用。我还可以以老式的方式实例化窗口控制器,而无需使用instantiateController(identifier:). 但是当我尝试上面的代码来自定义窗口控制器的实例化时,我最终遇到了以下错误:

断言失败-[NSClassSwapper _createControllerForCreator:coder:]...自定义实例化控制器必须调用-[super initWithCoder:]

请注意,我的自定义视图控制器类(有效)和我的自定义窗口控制器类MainWindowController(无效)都实现了平凡的初始值设定项:

required init?(coder: NSCoder) {  
    super.init(coder: coder)  
}
Run Code Online (Sandbox Code Playgroud)

我知道这个功能是 OS 10.15 的新功能,但文档说它应该适用于窗口控制器和视图控制器,并且错误消息对我没有任何意义。

macos nswindowcontroller xcode-storyboard swift macos-catalina

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

更改变量中的一个属性会触发其他属性的子目录.RxSwift

我有以下属性结构 Chat

struct Chat {
    var id = String()
    var gender = String()
    var date = Date()

    init() {}
}
Run Code Online (Sandbox Code Playgroud)

在视图控制器中,我声明了一个名为Chat的实例observablechat,然后我使用flatmap运算符来尝试并观察date属性的变化observablechat.但是,如果我更改性别属性(如图所示),则会触发订阅.我想知道为什么会这样,我如何修复此代码,以便订阅只查看date属性发生了什么,没有别的?

class ViewController: UIViewController {

    var observablechat = Variable(Chat())

        observablechat.asObservable()
        .flatMap { (Chat) -> Observable<Date> in
            return Observable.of(Chat.matchDate)
        }.subscribe(onNext: { (r) in
            print(r)
        }).addDisposableTo(disposeBag)


        self.observablechat.value.gender = "male" 
        //triggers subscription above. 
    }
}
Run Code Online (Sandbox Code Playgroud)

system.reactive ios rxjs swift rx-swift

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

如何使用图标创建一致的工具栏按钮

想要的样子

我希望为我的应用程序制作一个工具栏,其中包含一些简单的按钮,每个按钮都有一个单色图标。下面是一些类似于我试图实现的工具栏按钮的示例,来自邮件的撰写窗口:

邮件撰写窗口工具栏按钮

请注意,这些按钮具有一致的大小、内部填充、填充和阴影。这是 macOS 上非常一致的风格,出现在 Mail、Safari、Finder 等中。这让我怀疑有一个标准化的 UI 组件来创建这样的按钮。

如果我使用分段控件,每个按钮看起来都正确,每个图标都被正确填充:

分段控制

现在我想添加与样式匹配的单个按钮。

尝试 1

我的第一次尝试是向NSButton工具栏添加一个“按钮”( ):

这导致了一个有点太短的宽按钮,并且没有与分段控件对齐:

尝试 1

尝试 2

我的第二次尝试是使用分段控件,只有 1 个分段。

这导致按钮具有正确的形状、大小等,但它相对于其标签偏离了中心。

尝试 2

当然,我可以手动调整按钮以匹配目标,但我觉得我错过了一些东西。创建这些标准按钮的正确方法是什么?

macos cocoa interface-builder nstoolbar nstoolbaritem

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