2015-09-07 49 views
11

我正在使用Xcode 7的新功能:UI測試。 記錄的交互後,Xcode的自動生成的代碼:UI測試中不完整的通用字符名稱

- (void)testDoubleTapToolBarItem { 
    [[[XCUIApplication alloc] init].tabBars.buttons[@"\U5173\U6ce8"] doubleTap]; 
                ~~~~~~~~~~~~~~~~ 
} 

然而,警告顯示爲好。有人知道怎麼修這個東西嗎?

不完整的通用字符名


編輯:這似乎是因爲BUG的Xcode 7.0 GM

+0

如果已經由Xcode中產生那麼它是一個錯誤。 Objective-C字符串文字中的Unicode轉義序列是'\ uNNNN'或'\ UNNNNNNNN',在您的情況下是'@「\ u5173 \ u6ce8」'或'@「\ U00005173 \ U00006ce8」'。 –

+0

我不知道爲什麼所有生成的字符串代碼都是以'\ U'開頭,並且在我將它修復爲'\ u'後,它可以正常工作。 –

+0

@MartinR另一點是爲什麼WWDC 2015的演示是字符串而不是unicode? https://developer.apple.com/videos/wwdc/2015/?id=406 –

回答

21

您可以使用以下解決方法,因爲這似乎是一個錯誤in xcode:

全部取代\ U\ u 它應該工作。

1

我試着將\ U替換爲\ u,但仍然出現錯誤「unicode escape之後大括號中的預期十六進制代碼」,所以必須在此處添加\ u {你的值},就像collectionViewsQuery.buttons [「\ u {6ce8} \∪{518C}「]。挖掘()

多見於Expected hexadecimal code in braces after unicode escape

相關問題