mirror of
https://github.com/gimenete/iOS-boilerplate.git
synced 2026-01-10 23:18:07 -05:00
Adding TwitterSearch client
This commit is contained in:
@@ -82,6 +82,7 @@
|
||||
D8EA24CF145BA4AC00EB08B3 /* right@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = D8EA24CB145BA4AC00EB08B3 /* right@2x.png */; };
|
||||
D8EA24D3145BA4BC00EB08B3 /* BrowserSampleViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D8EA24D1145BA4BC00EB08B3 /* BrowserSampleViewController.m */; };
|
||||
D8EA24D4145BA4BC00EB08B3 /* BrowserSampleViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = D8EA24D2145BA4BC00EB08B3 /* BrowserSampleViewController.xib */; };
|
||||
F87266BC145EF4E200B775D3 /* TwitterSearchClient.m in Sources */ = {isa = PBXBuildFile; fileRef = F87266BB145EF4E200B775D3 /* TwitterSearchClient.m */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -212,6 +213,8 @@
|
||||
D8EA24D0145BA4BC00EB08B3 /* BrowserSampleViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BrowserSampleViewController.h; sourceTree = "<group>"; };
|
||||
D8EA24D1145BA4BC00EB08B3 /* BrowserSampleViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BrowserSampleViewController.m; sourceTree = "<group>"; };
|
||||
D8EA24D2145BA4BC00EB08B3 /* BrowserSampleViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = BrowserSampleViewController.xib; sourceTree = "<group>"; };
|
||||
F87266BA145EF4E200B775D3 /* TwitterSearchClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TwitterSearchClient.h; sourceTree = "<group>"; };
|
||||
F87266BB145EF4E200B775D3 /* TwitterSearchClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TwitterSearchClient.m; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
/* Begin PBXFrameworksBuildPhase section */
|
||||
@@ -422,6 +425,8 @@
|
||||
09270763141E4EC900E778AE /* DataHelper.m */,
|
||||
09E442CE141F97AE00AD2DAE /* ListViewController.h */,
|
||||
09E442CF141F97AE00AD2DAE /* ListViewController.m */,
|
||||
F87266BA145EF4E200B775D3 /* TwitterSearchClient.h */,
|
||||
F87266BB145EF4E200B775D3 /* TwitterSearchClient.m */,
|
||||
);
|
||||
name = Helpers;
|
||||
sourceTree = "<group>";
|
||||
@@ -657,6 +662,7 @@
|
||||
D8EA24C4145BA49100EB08B3 /* BrowserViewController.m in Sources */,
|
||||
D8EA24C6145BA49100EB08B3 /* MyApplication.m in Sources */,
|
||||
D8EA24D3145BA4BC00EB08B3 /* BrowserSampleViewController.m in Sources */,
|
||||
F87266BC145EF4E200B775D3 /* TwitterSearchClient.m in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
|
||||
@@ -28,9 +28,7 @@
|
||||
|
||||
#import "AsyncCellImagesExample.h"
|
||||
#import "SVProgressHUD.h"
|
||||
#import "JSONKit.h"
|
||||
#import "AFJSONRequestOperation.h"
|
||||
#import "DictionaryHelper.h"
|
||||
#import "TwitterSearchClient.h"
|
||||
#import "AsyncCell.h"
|
||||
|
||||
@implementation AsyncCellImagesExample
|
||||
@@ -114,18 +112,14 @@
|
||||
|
||||
[SVProgressHUD showInView:self.view];
|
||||
|
||||
NSString *urlString = @"http://search.twitter.com/search.json?q=%23ios";
|
||||
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];
|
||||
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
|
||||
[[TwitterSearchClient sharedClient] getPath:@"search" parameters:[NSDictionary dictionaryWithObject:@"iOS" forKey:@"q"] success:^(id object) {
|
||||
[SVProgressHUD dismiss];
|
||||
|
||||
self.results = [JSON arrayForKey:@"results"];
|
||||
self.results = [object valueForKey:@"results"];
|
||||
[table reloadData];
|
||||
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
|
||||
} failure:^(NSHTTPURLResponse *response, NSError *error) {
|
||||
[SVProgressHUD dismissWithError:[error localizedDescription]];
|
||||
|
||||
}];
|
||||
[operation start];
|
||||
}
|
||||
|
||||
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
|
||||
|
||||
14
IOSBoilerplate/TwitterSearchClient.h
Normal file
14
IOSBoilerplate/TwitterSearchClient.h
Normal file
@@ -0,0 +1,14 @@
|
||||
//
|
||||
// TwitterSearchClient.h
|
||||
// IOSBoilerplate
|
||||
//
|
||||
// Created by Mattt Thompson on 11/10/31.
|
||||
// Copyright (c) 2011年 Gowalla. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "AFHTTPClient.h"
|
||||
|
||||
@interface TwitterSearchClient : AFHTTPClient
|
||||
+ (TwitterSearchClient *)sharedClient;
|
||||
@end
|
||||
47
IOSBoilerplate/TwitterSearchClient.m
Normal file
47
IOSBoilerplate/TwitterSearchClient.m
Normal file
@@ -0,0 +1,47 @@
|
||||
//
|
||||
// TwitterSearchClient.m
|
||||
// IOSBoilerplate
|
||||
//
|
||||
// Created by Mattt Thompson on 11/10/31.
|
||||
// Copyright (c) 2011年 Gowalla. All rights reserved.
|
||||
//
|
||||
|
||||
#import "TwitterSearchClient.h"
|
||||
|
||||
#import "AFJSONRequestOperation.h"
|
||||
|
||||
NSString * const kTwitterBaseURLString = @"https://search.twitter.com/";
|
||||
|
||||
|
||||
@implementation TwitterSearchClient
|
||||
|
||||
+ (TwitterSearchClient *)sharedClient {
|
||||
static TwitterSearchClient *_sharedClient = nil;
|
||||
static dispatch_once_t oncePredicate;
|
||||
dispatch_once(&oncePredicate, ^{
|
||||
_sharedClient = [[self alloc] initWithBaseURL:[NSURL URLWithString:kTwitterBaseURLString]];
|
||||
});
|
||||
|
||||
return _sharedClient;
|
||||
}
|
||||
|
||||
- (id)initWithBaseURL:(NSURL *)url {
|
||||
self = [super initWithBaseURL:url];
|
||||
if (!self) {
|
||||
return nil;
|
||||
}
|
||||
|
||||
[self registerHTTPOperationClass:[AFJSONRequestOperation class]];
|
||||
|
||||
// Accept HTTP Header; see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.1
|
||||
[self setDefaultHeader:@"Accept" value:@"application/json"];
|
||||
|
||||
// X-UDID HTTP Header
|
||||
[self setDefaultHeader:@"X-UDID" value:[[UIDevice currentDevice] uniqueIdentifier]];
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@end
|
||||
@@ -28,9 +28,7 @@
|
||||
|
||||
#import "VariableHeightExample.h"
|
||||
#import "SVProgressHUD.h"
|
||||
#import "JSONKit.h"
|
||||
#import "AFJSONRequestOperation.h"
|
||||
#import "DictionaryHelper.h"
|
||||
#import "TwitterSearchClient.h"
|
||||
#import "VariableHeightCell.h"
|
||||
|
||||
@implementation VariableHeightExample
|
||||
@@ -111,17 +109,14 @@
|
||||
|
||||
[SVProgressHUD showInView:self.view];
|
||||
|
||||
NSString *urlString = @"http://search.twitter.com/search.json?q=%23cats";
|
||||
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];
|
||||
AFJSONRequestOperation *operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
|
||||
[[TwitterSearchClient sharedClient] getPath:@"search" parameters:[NSDictionary dictionaryWithObject:@"cats" forKey:@"q"] success:^(id object) {
|
||||
[SVProgressHUD dismiss];
|
||||
|
||||
self.results = [JSON arrayForKey:@"results"];
|
||||
self.results = [object valueForKey:@"results"];
|
||||
[table reloadData];
|
||||
} failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error) {
|
||||
} failure:^(NSHTTPURLResponse *response, NSError *error) {
|
||||
[SVProgressHUD dismissWithError:[error localizedDescription]];
|
||||
}];
|
||||
[operation start];
|
||||
}
|
||||
|
||||
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
|
||||
|
||||
Reference in New Issue
Block a user