키보드의 모든 키에 인접한 키를 모두 매핑하여 키 (예 : "a")를 빠르게 찾아서 키가 일정 시간 내에 인접하거나 일치하지 않습니다.값이 Set 인 사전이 Xcode에로드되지 않는 것 같습니다.
이것이 메모리 집약적이라고 생각하기는 어렵지만 키가 만 있으면로드되지만 시간이 지나면 키를 추가 할 때마다 모든 키와 함께 시간이 극적으로 늘어납니다. 전혀로드하지 않고 "신속한 소스 파일 컴파일"에 붙어 있습니다.
var adjcacencyCharacters = [
"a": Set(["a", "q", "w", "s", "z"]),
"b": Set(["b", "v", "g", "h", "n", "j", " "]),
"c": Set(["c", "x", "d", "f", "v", "g", " "]),
"d": Set(["d", "s", "e", "r", "f", "c", "x", "z"]),
"e": Set(["e", "w", "s", "d", "r"]),
"f": Set(["f", "d", "r", "t", "g", "v", "c", "x"]),
"g": Set(["g", "f", "t", "y", "h", "b", "v", "c"]),
"h": Set(["h", "g", "y", "u", "j", "v", "n", "b"]),
"i": Set(["i", "u", "j", "k", "o"]),
"j": Set(["j", "b", "u", "i", "k", "m", "n", "h"]),
"k": Set(["k", "j", "i", "o", "l", "m", "n"]),
"l": Set(["l", "k", "o", "p", "m"]),
"m": Set(["m", "j", "k", "l", "n"]),
"n": Set(["n", "b", "h", "j", "k", "m", " "]),
"o": Set(["o", "i", "k", "l", "p"]),
"p": Set(["p", "o", "l"]),
"q": Set(["q", "w", "a"]),
"r": Set(["r", "e", "d", "f", "t"]),
"s": Set(["s", "a", "w", "e", "d", "z"]),
"t": Set(["t", "r", "f", "g", "y"]),
"u": Set(["u", "y", "h", "j", "i"]),
"v": Set(["v", "c", "f", "g", "b", "h", " "]),
"w": Set(["w", "q", "a", "s", "e"]),
"x": Set(["x", "z", "s", "d", "f", "c"]),
"y": Set(["y", "t", "g", "h", "u"]),
"z": Set(["z", "a", "s", "d", "x"])
]
업데이트 : 약 15 분에서 20 분 후 앱이 컴파일되고 실행되었습니다. 왜 이렇게 오래 걸리는지 궁금합니다. 놀이터에서 시도해보십시오. 뭔가 잘못되었습니다. 상수 조회 시간 동안 각 키 값에 대한 세트를 유지하면서이 작업을 더 빨리 수행 할 수있는 방법이 있습니까? – VDog