漢語字典或者詞典的簡單的ios小demo,漢語字典iosdemo
[注意]轉載時請註明出處部落格園-吃唐僧肉的小悟空http://www.cnblogs.com/hukezhu/
首先感謝 枯龍吟 網易部落格提供了【成語詞典】【新華字典】【漢語詞典】介面以供使用.
無意中在網上發現了一個關於漢語字典方面的介面 ,於是自己就測試了一下,發現可以使用,非常感謝那位大神!!!
附上demo:
主要用到了資料解析的方式,伺服器返回的是json資料,直接使用ios提供的類進行解析,這個小demo很簡單,直接附上源碼:(代碼中,我封裝了一個方法,傳入伺服器的地址和請求的資料,回到主線程更新UI)
1 // 2 // ViewController.m 3 // 新華字典 4 // 5 // Created by hukezhu on 15/7/7. 6 // Copyright (c) 2015年 hukezhu. All rights reserved. 7 // 8 9 #import "ViewController.h" 10 #import <AFNetworking.h> 11 12 @interface ViewController () 13 @property (weak, nonatomic) IBOutlet UITextField *word; 14 @property (weak, nonatomic) IBOutlet UITextField *chengyu; 15 @property (weak, nonatomic) IBOutlet UITextView *textView; 16 @property (weak, nonatomic) IBOutlet UITextField *ciyu; 17 18 - (IBAction)wordClick:(UIButton *)sender; 19 - (IBAction)chengyuClick:(UIButton *)sender; 20 - (IBAction)ciyuClick:(UIButton *)sender; 21 22 @end 23 24 @implementation ViewController 25 26 27 28 29 - (void)viewDidLoad { 30 [super viewDidLoad]; 31 32 } 33 34 35 - (void)getDictionary :(NSString *)strUrl word:(NSString *)word{ 36 37 NSString *stringUrl = strUrl; 38 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; 39 manager.responseSerializer.acceptableContentTypes =[NSSet setWithObjects:@"application/json", @"text/json", @"text/javascript",@"text/html", nil]; 40 41 [manager GET:stringUrl parameters:@{@"word":word} success:^(AFHTTPRequestOperation *operation, id json) { 42 43 NSData *data = [NSJSONSerialization dataWithJSONObject:json options:0 error:NULL]; 44 45 46 NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:data options:0 error:NULL]; 47 48 49 50 NSString *rootKey = dict.keyEnumerator.nextObject; 51 NSArray *array = dict[rootKey]; 52 53 54 55 NSMutableString *stringM = [NSMutableString string]; 56 for (NSDictionary *dict1 in array) { 57 58 for (NSString *key in dict1) { 59 if ([key isEqualToString:@"text"]) { 60 NSString *object=[dict1 objectForKey:key]; 61 //NSLog(@"%@",object); 62 [stringM appendFormat:@"%@\n",object]; 63 } 64 65 } 66 } 67 68 self.textView.text = stringM; 69 } failure:^(AFHTTPRequestOperation *operation, NSError *error) { 70 NSLog(@"error:%@",error); 71 }]; 72 73 74 } 75 76 - (IBAction)wordClick:(UIButton *)sender { 77 78 //NSLog(@"點擊了尋找按鈕"); 79 if (self.word.text) { 80 [self getDictionary:@"http://brisk.eu.org/api/xhzd.php" word:self.word.text]; 81 } 82 83 [self.view endEditing:YES]; 84 85 86 } 87 88 - (IBAction)chengyuClick:(UIButton *)sender { 89 90 if (self.chengyu.text) { 91 [self getDictionary:@"http://brisk.eu.org/api/cycd.php" word:self.chengyu.text]; 92 } 93 94 [self.view endEditing:YES]; 95 } 96 97 - (IBAction)ciyuClick:(UIButton *)sender { 98 99 if (self.ciyu.text) {100 [self getDictionary:@"http://brisk.eu.org/api/hycd.php" word:self.ciyu.text];101 }102 103 104 //這個是周公解夢的,可是api不能使用了105 // if (self.ciyu.text) {106 // [self getDictionary:@"http://brisk.eu.org/api/dream.php" word:self.ciyu.text];107 // }108 109 [self.view endEditing:YES];110 }111 @end