小编Tim*_*len的帖子

NSObject init方法是否可以执行任何操作?

self = [super init];在继承NSObject的同时编写自定义初始化方法是否有意义?我知道在继承任何其他类时,它是必要的,因为它可能有自定义初始化,但NSObject init方法是否做了什么?

initialization objective-c nsobject

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

通过哈希值访问 Swift 集合元素

假设我正在制作一个国际象棋应用程序,其中的位置存储如下:

struct Position {
    var pieces: Set<Piece>
    // some other stuff
}
Run Code Online (Sandbox Code Playgroud)

Piece 定义如下:

struct Piece: Hashable {
    var row: Int
    var column: Int
    let player: Player
    let type: PieceType

    var hashValue: Int {
        return 8 * row + column
    }
}
Run Code Online (Sandbox Code Playgroud)

Player并且PieceType是简单的枚举:

enum Player {
    case White, Black
}

enum PieceType {
    case Queen, King, ...
}
Run Code Online (Sandbox Code Playgroud)

现在,我想通过 a Piecein aPosition在董事会上的位置来访问它。a 的哈希值Piece由其位置唯一确定,因此Piece应该可以在恒定时间内访问 a 。但是,Swift 集合没有通过其哈希值获取其元素之一的函数。我能想到的就是

for piece in pieces …
Run Code Online (Sandbox Code Playgroud)

hash set swift

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

从2016-02-10 00:00:00之类的日期删除时间

你好,我有这样的约会

2016-02-10 00:00:00
Run Code Online (Sandbox Code Playgroud)

我想以这种方式得到它的日期

14.05.2016 or 14-05-2016
Run Code Online (Sandbox Code Playgroud)

这就是我尝试过的

let dateFormatter = NSDateFormatter()
let date = "2016-02-10 00:00:00"
dateFormatter.dateFormat = "dd-MM-yyyy"
let newdate = dateFormatter.dateFromString(date)
print(newdate) //nil is coming
Run Code Online (Sandbox Code Playgroud)

nsdate nsdateformatter ios swift

5
推荐指数
4
解决办法
1万
查看次数

类在 /Users/... 和 /Applications/... 中实现。使用两者之一。哪一个是未定义的

我知道这是使用单元测试时的常见错误消息,但我没有这样做。这就是我所做的:

  • 我创建了一个新的命令行工具项目
  • print("Hello, World!")我在该行放置了一个断点
  • po 3+3在控制台中输入类似的内容

然后我收到这条消息:

objc[929]:类 _TtCs18_EmptyArrayStorage 在 /Users/tim/Library/Developer/Xcode/DerivedData/TestProject-hlekdhnmnvllzganostmsaamwjje/Build/Products/Debug/TestProject 和 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault 中实现.xctoolchain/usr/lib/swift/macosx/libswiftCore.dylib。将使用两者之一。哪一个是未定义的。

不仅是_TtCs18_EmptyArrayStorage,还有_TtCs24_ContiguousArrayStorage1大约两打。

我没有对我的项目做任何事情(甚至没有更改任何代码),所以我不确定我做错了什么。几天前我什至在我的 Mac 上进行了全新安装。我可以做什么来解决这个问题?

xcode swift

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

特定于枚举成员的通用约束

我有一个关联类型的协议:

protocol MyProtocol {
    associatedtype Q
}
Run Code Online (Sandbox Code Playgroud)

现在我想要一个枚举

enum MyEnum<Q> {
    case zero
    case one(MyProtocol)
    case two(MyProtocol, MyProtocol)
}
Run Code Online (Sandbox Code Playgroud)

其中每个关联的值都Q作为其关联类型。这不起作用:

enum MyEnum<Q> {
    case zero
    case one<P: MyProtocol where P.Q == Q>(P)
    case two<P1: MyProtocol, P2: MyProtocol where P1.Q == Q, P2.Q == Q>(P1, P2)
}
Run Code Online (Sandbox Code Playgroud)

显然,单个枚举成员不能有自己的通用约束。

我唯一能想到的就是将这些约束移动到枚举声明中,但这会固定关联的类型。为了证明为什么这不是我想要的,这就是我希望能够做的:

struct StructA: MyProtocol {
    typealias Q = Int
}

struct StructB: MyProtocol {
    typealias Q = Int
}

var enumValue = MyEnum.one(StructA())
enumValue = .two(StructB(), StructA())
enumValue = .two(StructA(), StructB()) …
Run Code Online (Sandbox Code Playgroud)

generics enums type-constraints swift

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

Xcode 7 - 约束 - 按钮之间的间距相等

我试图在11个按钮之间获得水平相等的间距,我尝试过使用IB,但我无法在不同的屏幕尺寸上同样获得按钮.此外,我想增加按钮的大小,并保持每个按钮在更大的屏幕上的比例.

3.5英寸 在此输入图像描述

5.5英寸 在此输入图像描述

我一直在尝试所有不同的约束设置,但我无法做到正确.这可能实现,如果是,如何?

ios autolayout

4
推荐指数
2
解决办法
6043
查看次数

设置自定义UIViewController类时,iPhone模拟器显示黑屏

UIButton例如,在Xcode中创建单个视图应用程序并拖动输入时,在iPhone模拟器中运行应用程序时会显示该按钮.但是,在创建新UIViewController类并将其设置为情节提要文件中的视图控制器的自定义类时,iPhone模拟器中仅显示黑屏.

我做错了什么?

iphone xcode objective-c interface-builder ios-simulator

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

再次声明变量时可以随机设置变量吗?

在我的方法中,我声明了一些变量,包括int blockCount;.我不止一次称这种方法.使用Xcode调试器,我发现在第二次调用该方法之后,将值blockCount设置为364265,而将其设置为2,仅提前几毫秒.

这不是一个真正的问题,因为我可以将它设置为0或我想要的任何其他数字,但是一次又一次地声明某个变量是不好的编程习惯?我对编程很陌生,我想确保我正确地做事.:)

variables methods xcode declaration objective-c

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

二维C阵列

我正在连续四个应用程序,或者,至少是一个计算最佳动作和内容的类.游戏板的高度为6,宽度为7.我不确定是否应该命名实例变量gamePosition[6][7]gamePosition[7][6].我知道我会使用哪一个并不重要,但是比另一个更常见?我想马上以正确的方式做到这一点.

c arrays multidimensional-array

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

Swift中的嵌套函数

我学得很快,想要了解如何制作嵌套函数

extension Auto {
    // MARK: Auto extensions
    func isRegistred() -> Bool {
        return true
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我想验证一个Auto是否已经注册我必须使用这一行如果Auto.isRegistered() 自动注册了我也希望能够验证它是否是一个新的,所以我想添加一个isNew()功能.是否有可能增加一个嵌套函数,这样我仍然可以验证,如果汽车所注册Auto.isRegistered()并使用Auto.isRegistered().isNew(),以验证它是一个注册的汽车,一个新的?就像是

extension Auto {
    // MARK: Auto extensions
    func isRegistred() -> Bool {
        func isNew() -> Bool{
            return true
        }
        return true
    }
}
Run Code Online (Sandbox Code Playgroud)

nested-function swift

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

src属性仅适用于相对路径

我在我的网页上添加了一个javascript文件,如下所示:

<script type="text/javascript" src="../../js/filename.js"></script>
Run Code Online (Sandbox Code Playgroud)

这很好用.但是,然后我尝试将相对路径更改为绝对路径,如下所示:

<script type="text/javascript" 
        src="/home/name/domains/domain.com/public_html/js/filename.js"></script>
Run Code Online (Sandbox Code Playgroud)

这会导致此服务器以404 (Not Found)状态响应.

我很确定这是这个文件的正确绝对路径,因为使用require_once()非常相似的绝对路径导入某个php文件可以正常工作.实际上,PHP函数realpath("../../js/filename.js")产生了"/home/name/domains/domain.com/public_html/js/filename.js".

我究竟做错了什么?

html path relative-path absolute-path src

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

Swift:过滤Object数组的数组

我有以下结构

aSectionArray = [[objA, objB, objC], [obj1, obj2, obj3], [objX, objY, objZ]]
Run Code Online (Sandbox Code Playgroud)

比如,objA有一个bool isEnabled.

我需要过滤aSectionArray基于这个bool(比方说isEnabled == true).

需要帮助.

arrays swift

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