programing

어떻게 하면 신속하게 새 라인을 만들 수 있습니까?

padding 2023. 8. 31. 23:41
반응형

어떻게 하면 신속하게 새 라인을 만들 수 있습니까?

자바의 "\n"과 같이 swift로 새 줄을 만드는 방법이 있습니까?

var example: String = "Hello World \n This is a new line"

사용할 수 있어야 합니다.\nSwift 문자열 안에 있으면 예상대로 작동하여 줄 바꿈 문자를 만듭니다.다음 후에 공간을 제거할 수 있습니다.\n다음과 같은 적절한 형식 지정:

var example: String = "Hello World \nThis is a new line"

콘솔에 인쇄할 경우 다음과 같이 해야 합니다.

Hello World
This is a new line

그러나 이 문자열을 사용하는 방법에 따라 다음과 같은 몇 가지 다른 고려 사항이 있습니다.

  • UILabel의 텍스트 속성으로 설정하는 경우 UILabel의 numberOfLines = 0(무한 줄 수)을 사용해야 합니다.
  • 일부 네트워킹 사용 사례에서는\r\n대신 Windows(윈도우) 새 줄 바꿈.

편집: UITextField를 사용하고 있다고 했는데 여러 줄을 지원하지 않습니다.UI 텍스트 보기를 사용해야 합니다.

유용한 기능:

let multiLineString = """
                  Line One
                  Line Two
                  Line Three
                  """
  • 코드를 보다 쉽게 읽을 수 있도록 합니다.
  • 복사 붙여넣기 허용

다음 코드를 사용할 수 있습니다.

var example: String = "Hello World \r\n This is a new line"

당신은 이걸 할 수 있다.

textView.text = "Name: \(string1) \n" + "Phone Number: \(string2)"

출력은 다음과 같습니다.

이름: string1 출력 전화 번호: string2 출력

"\n"모든 곳에서 작동하지 않습니다!

예를 들어 전자 메일의 경우 다음과 같은 사용자 지정 키보드에서 사용하는 경우 새 줄 대신 텍스트에 정확한 "\n"을 추가합니다.textDocumentProxy.insertText("\n")

다른 새로운 라인 문자를 사용할 수 있지만 단순히 여기에 붙여넣을 수는 없습니다(새로운 라인을 만들기 때문에).

다음 확장 사용:

extension CharacterSet {
    var allCharacters: [Character] {
        var result: [Character] = []
        for plane: UInt8 in 0...16 where self.hasMember(inPlane: plane) {
            for unicode in UInt32(plane) << 16 ..< UInt32(plane + 1) << 16 {
                if let uniChar = UnicodeScalar(unicode), self.contains(uniChar) {
                    result.append(Character(uniChar))
                }
            }
        }
        return result
    }
}

모든 문자에 액세스할 수 있습니다.CharacterSet라는 문자 집합이 있습니다.newlines다음 중 하나를 사용하여 요구 사항을 충족합니다.

let newlines = CharacterSet.newlines.allCharacters
for newLine in newlines {
    print("Hello World \(newLine) This is a new line")
}

그런 다음 테스트하고 작업한 것을 어디에나 보관하고 어디에나 사용하십시오.문자 집합의 인덱스에서는 릴레이할 수 없습니다.바뀔 수도 있습니다.

하지만 대부분의 경우 "\n"예상대로 작동합니다.

저는 시도해 보았는데, 이렇게 하면 읽기 쉽고 복사하고 붙여넣기가 편리합니다.

let exampleString = """
              Begin of string
              Line 1
              Line 2
              End of string
              """

언급URL : https://stackoverflow.com/questions/35387327/how-do-i-make-a-new-line-in-swift

반응형