-
Notifications
You must be signed in to change notification settings - Fork 3
/
ZZViewController.h
78 lines (60 loc) · 2.08 KB
/
ZZViewController.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/*
* Copyright (c) Sevencrayons.com <iutinvg@gmail.com>
* License: http://www.opensource.org/licenses/mit-license.html
*/
#import "ZZJSONRequest.h"
/**
Short hand for creation of view controller with white view stretched to
full screen and with support of all interface orientations.
Please see Demo part of ZZLib project as a best example of the usage:
- https://github.com/iutinvg/ZZLib/blob/master/Demo/ZZDemoViewController.h
- https://github.com/iutinvg/ZZLib/blob/master/Demo/ZZDemoViewController.m
*/
@interface ZZViewController : UIViewController <ZZJSONRequestDelegate> {
NSTimer* _timerLoadingIndication;
NSTimer* _timerHideIndication;
}
@property (nonatomic, strong) ZZJSONRequest* request;
/**
Must be overriden to create relevant request for your application.
The default method just show activity idicator.
Example:
- (void)createRequest {
[super createRequest];
_request = [[ZZJSONRequest alloc]
initWithURLString:@"http://search.twitter.com/search.json?q=iPhone"
delegate:self];
}
*/
- (void)createRequest;
/**
It cancel and release the current request. It is called by
[ZZJSONRequestDelegate requestDidFinishLoading:].
*/
- (void)releaseRequest;
/**
Creates/removes a view for visualizing of loading process.
You will need it in case of usage this class in pair with ZZJSONRequest or similar.
Default implementation is very simple: white background with activity indicator in the center.
Please override if necessary. It is not necessary to involve the super class method in your one,
though you may of course.
Usage example:
- (void)viewDidLoad {
[super viewDidLoad];
// starting loading process here
[self showLoading:YES];
}
@param flag `YES` to creates loading view, `NO` to remove
*/
- (void)showLoading:(BOOL)flag;
/**
Finds first responder in the given view.
You may need it if you want to know the current editable textfield for example.
@param view the view to search first responder in.
*/
- (UIView*)findFirstResponderBeneathView:(UIView*)view;
/**
Hides keyboard.
*/
- (void)hideKeyboard;
@end