2017-01-04 25 views
7

Когда мой WKInterfaceController появился, нажав кнопку menuItem (который был установлен «self.addMenuItem в mainScreen»), заголовок на всплываемом WKInterfaceController показывает « abbrechen "вместо" Cancel ". Кто-нибудь знает, как исправить это, чтобы показать «Cancel»? Или, например, где я, вероятно, ошибаюсь?Наклейка «Отмена» из модального сегмента в Apple Watch показывает неправильный текст - «abbrechen»

//MainScreen.swift 
func setContextItems(directToEnabled: Bool) { 
     self.clearAllMenuItems() 
     self.addMenuItem(with: WKMenuItemIcon.decline, title: "direct", action: #selector(MainScreen.freePressed)) 
} 

Улики:

  • Это происходит только на моем Apple Наблюдать за устройством (WatchOS 3,1). Когда он запускает на симуляторе (Xcode 8.2.1, iPhone 7 плюс), он отлично работает «Отмена».
  • My Langauge & Регион - английский. «Langauge & Регион» в приложении «Мои часы» и моей настройке iPhone являются английским языком и австралийским регионом.
  • «abbrechen» является «отменой» или «отменой» на немецком языке.
  • Существует related question на SO.
  • Возможно, я где-то изменил настройку plist для langauge.
  • Я искал свой проект, и я не могу найти ключевые слова, такие как «german», «abbrechen»
  • Я использовал «#if (TARGET_OS_IOS || TARGET_IPHONE_SIMULATOR)», но ничего не связано.

Я думаю, что я мог бы изменить плоскость где-нибудь, что изменит локаль/язычок только на Apple Watch. Или, может быть, это редкая ошибка WatchOS. Кто-нибудь видел подобную проблему раньше?

ответ

1

Проверьте, не перекрываете ли вы языковые настройки при установке по Xcode. Это можно сделать с помощью редактора схем в Xcode:

  • Щелкните по целевому назначению в меню «Запустить пункт назначения» и выберите «Редактировать схему».
  • Справа выберите Функции.
  • Проверить Application Language установки

scheme editor language settings

Более подробную информацию о Testing Specific Languages and Regions (@developer.apple.com)

+0

По умолчанию там был «Системный язык», который должен быть английским. Я изменил его на английский, но он не работает. Спасибо за предоставление этого метода, хотя, я не пробовал это. – allenlinli

1

Я немного смущен вами код? Вы даете ему титул «прямой», но ожидаете названия «Отмена»?

Если вы не делаете:

self.clearAllMenuItems() 
    self.addMenuItem(withImageNamed: "imageFileForDirectButton", title: "Direct", action: #selector(TheController.menuDirectButtonPressedFunction)) 
    self.addMenuItem(with: WKMenuItemIcon.decline, title: "Cancel", action: #selector(TheController.menuCancelButtonPressedFunction)) 
+0

Название, показывающее здесь название для itemMenu, но то, что я спрашиваю название всплывшего WKInterfaceController. – allenlinli

0

Вы пробовали перекрывая титул?

override func awake(withContext context: Any?) 
{ 
    self.setTitle("Cancel")  
    super.awake(withContext: context) 
} 

override func willActivate() 
{ 
    self.setTitle("Cancel") 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^