2010-12-30 2 views
0

Я пытаюсь построить игру слова в iphone. В принципе, пользователь должен иметь возможность вводить слово на экран с помощью клавиатуры (простое), и приложение должно иметь возможность проверять слово и предлагать некоторые другие подобные слова (например, искать словарь).Построение слова игры в iphone

Есть ли встроенный словарь слов на iphone, который я могу использовать. Любое руководство, чтобы начать это, было бы высоко оценено.

+0

похоже на произношение или определение? –

+0

похоже на правописание. В основном, начиная с первых двух букв или около того. –

ответ

6

Существует не словарь, построенный в на Iphone, насколько я могу судить, но вы можете сделать одно из следующих действий:

  1. Скачать большой словарь из Интернета (он придет в просто текстовый файл), затем отправьте его как часть вашего приложения.
  2. Удалите веб-службу со словарем на стороне сервера, чтобы искать совпадения.
+0

Я рассмотрю это. Возможно, лучше сделать это локально, поэтому не требуется доступ к сети. Спасибо. –

+0

Обратите внимание, что вы также можете сделать комбинационный подход - иметь небольшой словарь локально и большой в облаке. –

+0

Еще одна вещь, о которой стоит помнить, это то, что вы можете отправить свое приложение с помощью ZIPPED-версии словаря и разархивировать его при первой загрузке. Это позволит сохранить размер загружаемого файла достаточно малым, чтобы не требовать WiFi. –

0

Некоторое время назад я опубликовал статическую библиотеку под названием Lexicontext, которая, на мой взгляд, актуальна, если вы хотите использовать опцию офлайн (она основана на WordNet).

1

Я создал класс с открытым исходным кодом CDWordList, который загружается в текстовый файл, содержащий список слов. Вы можете увидеть, является ли строка словом, вызвав - (BOOL) isWord: (NSString *) слово на объекте. Проект поставляется с английским Open Word List (EOWL), который содержит около 128 тысяч слов.

0

Старой нити я знаю, но UITextChecker делает первую часть без загрузки Словарных:

-(BOOL)isDictionaryWord:(NSString*) word { 
    UITextChecker *checker = [[UITextChecker alloc] init]; 
    NSLocale *currentLocale = [NSLocale currentLocale]; 
    NSString *currentLanguage = [currentLocale objectForKey:NSLocaleLanguageCode]; 
    NSRange searchRange = NSMakeRange(0, [word length]);  
    NSRange misspelledRange = [checker rangeOfMisspelledWordInString:[word lowercaseString] range: searchRange startingAt:0 wrap:NO language: currentLanguage ]; 
return misspelledRange.location == NSNotFound; 
} 

получил это по ссылке StackOverflow здесь: iPhone objective-c: detecting a 'real' word

Я подправил код ссылки, чтобы изменить строку в нижнем регистре, в противном случае он всегда возвращает True для заглавных букв по какой-то причине

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