Simple sqlite tutorial
First we have to add libsqlite3.0.dylib
sqliteAppDelegate.h
Database
@interface RootViewController : UITableViewController {
NSString *databasePath1;
NSMutableArray *sampleArray;
int totCountView;
IBOutlet UIImageView *navBarImage;
IBOutlet UIImageView *bgImage;
IBOutlet UIImageView *back1Image;
IBOutlet UIImageView *back2Image;
}
@property(nonatomic, retain) AnimalViewController *animalView;
@property(nonatomic,retain)NSMutableArray *sampleArray;
-(NSMutableArray *) readAnimalsFromDatabase:(int)z;
@property int totCountView;
@property(nonatomic, retain)IBOutlet UIImageView *navBarImage;
@property(nonatomic, retain)IBOutlet UIImageView *bgImage;
@property(nonatomic, retain)IBOutlet UIImageView *back1Image;
@property(nonatomic, retain)IBOutlet UIImageView *back2Image;
@end
RootViewController.m
@implementation RootViewController
@synthesize animalView, sampleArray, totCountView, navBarImage, bgImage, back1Image, back2Image;
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return appDelegate.animals.count;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 61;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *displayText=[NSString stringWithFormat:@"%@ (%d)",animal.name,[[appDelegate.countArray objectAtIndex:indexPath.row]intValue]];
CustomCell *cellDisp = [[CustomCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:nil title:displayText and:indexPath.row];
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
viewController.printTitle = animal.name;
viewController.totalCount = [[appDelegate.countArray objectAtIndex:indexPath.row]intValue];
[self.navigationController pushViewController:viewController animated:YES];
[viewController release];
}
- (void)viewDidLoad
{
[background release];
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(60, 28, 200, 20)];
label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
-(NSMutableArray *) readAnimalsFromDatabase:(int)z
{
NSMutableArray *mutableArray = [[NSMutableArray alloc ]init];
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
[mutableArray addObject:aName1];
}
}
}
[mutableArray release];
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
}
- (void)didReceiveMemoryWarning {
- (void)dealloc {
}
@end
@interface CustomCell : UITableViewCell{
}
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier title:(NSString*)title and:(int)index;
@end
@implementation CustomCell
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier title:(NSString*)title and:(int)index{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self!=nil){
UIImageView *image =[[UIImageView alloc]initWithFrame:CGRectMake(0,0,320,61)];
UIImage *setImage = (index%2==0)?[UIImage imageNamed:@"tile1.png"]:[UIImage imageNamed:@"tile2.png"];
image.image = setImage;
[self addSubview:image];
[image release];
UILabel *imagelabel = [[UILabel alloc]initWithFrame:CGRectMake(0,0,self.frame.size.width,50)];
imagelabel.backgroundColor=[UIColor clearColor];
imagelabel.text = title;
[self addSubview:imagelabel];
[imagelabel release];
}
return self;
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];
@end
@interface Animal : NSObject {
NSString *name;
NSNumber *nameCount;
}
@property (nonatomic, retain) NSString *name;
@property(nonatomic, retain) NSNumber *nameCount;
-(id)initWithName:(NSString *)n and :(NSNumber *)a;
@end
@implementation Animal
@synthesize name;
@synthesize nameCount;
-(id)initWithName:(NSString *)n and :(NSNumber *)a{
self.name = n;
self.nameCount = a;
return self;
}
-(void)dealloc
{
[super dealloc];
[name release];
@end
@interface AnimalViewController : UIViewController {
IBOutlet UITableView *Desciption;
NSMutableArray *accessArray;
NSString *printTitle;
int totalCount;
}
@property (nonatomic, retain) IBOutlet UITableView *Desciption;
@property(nonatomic,retain) NSMutableArray *accessArray;
@property(nonatomic,retain) NSString *printTitle;
@property int totalCount;
@end
AnimalViewController.m
@implementation AnimalViewController
@synthesize Desciption;
@synthesize accessArray, printTitle, totalCount;
{
UIImageView *back1Image = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"back1.png"]];
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(60, 28, 200, 20)];
[background release];
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
textController *viewController = [[textController alloc] initWithNibName:@"textController" bundle:nil];
viewController.printState= [accessArray objectAtIndex:indexPath.row];
viewController.printArray= accessArray;
viewController.count = indexPath.row;
viewController.totalCount1 = totalCount;
[self.navigationController pushViewController:viewController animated:YES];
[viewController release];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
}
- (void)didReceiveMemoryWarning {
- (void)dealloc {
[super dealloc];
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 61;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *displayText = [accessArray objectAtIndex:indexPath.row];
CustomCell *cellDisp = [[CustomCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:nil title:displayText and:indexPath.row];
}
@end
NSString *printState;
IBOutlet UITextView *textView;
IBOutlet UITextField *textCountView;
NSArray *textArray;
NSString *txtCntrlr;
NSArray *printArray;
NSString *tCount;
int totalCount1;
int count;
IBOutlet UIButton *smsBtn;
IBOutlet UIButton *mailBtn;
IBOutlet UIButton *favBtn;
IBOutlet UIButton *remvefavBtn;
}
@property (nonatomic, retain) NSString *printState;
@property(nonatomic, retain)IBOutlet UITextView *textView;
@property(nonatomic, retain)IBOutlet UITextField *textCountView;
@property(nonatomic, retain)NSArray *textArray;
@property(nonatomic, retain)NSString *txtCntrlr;
@property (nonatomic, retain) NSArray *printArray;
@property(nonatomic, retain) IBOutlet UIButton *smsBtn;
@property(nonatomic, retain) IBOutlet UIButton *mailBtn;
@property(nonatomic, retain) IBOutlet UIButton *favBtn;
@property(nonatomic, retain) NSString *tCount;
@property(nonatomic, retain)IBOutlet UIButton *remvefavBtn;
@property int totalCount1;
@property int count;
- (IBAction)smsbuttonPressed:(id)sender;
- (IBAction)mailbuttonPressed:(id)sender;
- (IBAction)favbuttonPressed:(id)sender;
-(IBAction)remvefavBtnPressed:(id)sender;
-(void)displayComposerSheet;
-(void)launchMailAppOnDevice;
@end
@implementation textController
@synthesize printState;
@synthesize textView, textCountView, textArray, txtCntrlr, printArray, count, smsBtn, mailBtn, favBtn, totalCount1, tCount;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
return self;
}
- (void)didReceiveMemoryWarning
{
- (void)viewDidLoad
{
[background release];
NSString *countStr = [[NSNumber numberWithInt:count+1] stringValue];
NSString *totCountStr = [[NSNumber numberWithInt:totalCount1] stringValue];
tCount = [[NSString alloc]initWithString:totCountStr];
textCountView.text =[NSString stringWithFormat:@"%@ / %@",countStr,tCount];
UISwipeGestureRecognizer *oneFingerSwipeUp =
[[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeDown:)] autorelease];
[[self view] addGestureRecognizer:oneFingerSwipeDown];
- (void)oneFingerSwipeUp:(UISwipeGestureRecognizer *)recognizer
{
count++;
NSString *countStr = [[NSNumber numberWithInt:count+1] stringValue];
textCountView.text =[NSString stringWithFormat:@"%@ / %@",countStr,tCount];
- (void)oneFingerSwipeDown:(UISwipeGestureRecognizer *)recognizer
{
if(count>=1)
{
NSString *countStr = [[NSNumber numberWithInt:count] stringValue];
textCountView.text =[NSString stringWithFormat:@"%@ / %@",countStr,tCount];
count--;
-(void)fadeOut:(UIView*)viewToDissolve withDuration:(NSTimeInterval)duration andWait:(NSTimeInterval)wait
{
-(void)fadeIn:(UIView*)viewToFadeIn withDuration:(NSTimeInterval)duration andWait:(NSTimeInterval)wait
{
-(void) fadeInFromFadeOut: (UIView*)viewToFadeIn withDuration:(NSTimeInterval)duration
{
viewToFadeIn.hidden=NO;
}
- (IBAction)favbuttonPressed:(id)sender
{
NSString *plistPath = [documentPath stringByAppendingPathComponent:@"favourite.plist"];
{
NSMutableArray *plistArray= [[NSMutableArray alloc] initWithContentsOfFile:plistPath];
[plistArray addObject:textView.text];
[plistArray release];
}
else {
[plistArray release];
}
[alert release];
}
-(IBAction)remvefavBtnPressed:(id)sender
{
}
- (IBAction)smsbuttonPressed:(id)sender
{
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result
{
[alert release];
}
[alert release];
}
else
{
[alert release];
}
}
- (void)sendSMS:(NSString *)bodyOfMessage recipientList:(NSArray *)recipients
{
controller.body = bodyOfMessage;
controller.recipients = recipients;
controller.messageComposeDelegate = self;
}
- (IBAction)mailbuttonPressed:(id)sender
{
{
{
else
{
}
else
{
}
{
[picker setSubject:@""];
NSArray *ccRecipients = [[NSArray alloc]init];
NSArray *bccRecipients = [[NSArray alloc]init];
[picker setToRecipients:toRecipients];
[picker setCcRecipients:ccRecipients];
[picker setBccRecipients:bccRecipients];
[picker setMessageBody:emailBody isHTML:NO];
}
{
{
[alert1 release];
break;
[alert2 release];
break;
[alert3 release];
break;
[alert4 release];
break;
default:
[alert5 release];
break;
}
[self dismissModalViewControllerAnimated:YES];
}
{
NSString *recipients = @"";
NSString *body = @"";
NSString *email = [NSString stringWithFormat:@"%@%@", recipients, body];
email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:email]];
}
- (void)viewDidUnload
{
[super viewDidUnload];
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
}
@end
@interface favoriteController : UIViewController
{
NSString *favState;
NSMutableArray *favArray;
IBOutlet UITableView *atableview;
IBOutlet UIImageView *navBarImage;
}
@property (nonatomic, retain) NSString *favState;
@property (nonatomic, retain) NSArray *favArray;
@property (nonatomic, retain) IBOutlet UITableView *atableview;
@property (nonatomic, retain) IBOutlet UIImageView *navBarImage;
@end
@implementation favoriteController
@synthesize favArray, favState, atableview, navBarImage;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
return self;
}
- (void)didReceiveMemoryWarning
{
{
}
-(void)viewDidAppear:(BOOL)animated
{
NSString *plistPath = [documentPath stringByAppendingPathComponent:@"favourite.plist"];
- (void)viewDidLoad
{
[background release];
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell.textLabel.text = [favArray objectAtIndex:indexPath.row];
return cell;
}
- (void)viewDidUnload
{
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
}
- (void)tableView:(UITableView *)tableview didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
}
@end
IBOutlet UITextView *txtView;
NSString *dispStr;
NSArray *dispArr;
int countInt;
NSString *totFavCount;
NSString *favCount;
NSString *totFCount;
NSString *tCounts;
IBOutlet UITextField *textFeild;
}
@property(nonatomic, retain)IBOutlet UITextView *txtView;
@property(nonatomic, retain)NSString *dispStr;
@property(nonatomic, retain)NSArray *dispArr;
@property(nonatomic, retain)NSString *totFavCount;
@property(nonatomic, retain)NSString *favCount;
@property(nonatomic, retain)NSString *totFCount;
@property(nonatomic, retain) IBOutlet UITextField *textFeild;
@property(nonatomic, retain) NSString *tCounts;
@property int countInt;
@end
@implementation fView
@synthesize txtView, dispStr, dispArr, countInt, totFavCount, favCount, totFCount, textFeild, tCounts;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
return self;
}
- (void)didReceiveMemoryWarning
{
- (void)viewDidLoad
{
[background release];
int totalCounts = [dispArr count];
NSString *countStrg = [[NSNumber numberWithInt:countInt+1] stringValue];
NSString *totCountStrg = [[NSNumber numberWithInt:totalCounts] stringValue];
tCounts = [[NSString alloc]initWithString:totCountStrg];
textFeild.text =[NSString stringWithFormat:@"%@ / %@",countStrg,tCounts];
UISwipeGestureRecognizer *oneFingerSwipeUp =
[[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeDown:)] autorelease];
[[self view] addGestureRecognizer:oneFingerSwipeDown];
- (void)oneFingerSwipeUp:(UISwipeGestureRecognizer *)recognizer
{
countInt++;
NSString *countStrg = [[NSNumber numberWithInt:countInt+1] stringValue];
textFeild.text =[NSString stringWithFormat:@"%@ / %@",countStrg,tCounts];
- (void)oneFingerSwipeDown:(UISwipeGestureRecognizer *)recognizer
{
if(countInt>=1)
{
NSString *countStrg = [[NSNumber numberWithInt:countInt] stringValue];
textFeild.text =[NSString stringWithFormat:@"%@ / %@",countStrg,tCounts];
countInt--;
-(void)fadeOut:(UIView*)viewToDissolve withDuration:(NSTimeInterval)duration andWait:(NSTimeInterval)wait
{
-(void)fadeIn:(UIView*)viewToFadeIn withDuration:(NSTimeInterval)duration andWait:(NSTimeInterval)wait
{
-(void) fadeInFromFadeOut: (UIView*)viewToFadeIn withDuration:(NSTimeInterval)duration
{
viewToFadeIn.hidden=NO;
}
- (void)viewDidUnload
{
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
}
@end
First we have to add libsqlite3.0.dylib
sqliteAppDelegate.h
#import <UIKit/UIKit.h>
#import <sqlite3.h> // Import the SQLite database framework
@interface SQLiteTutorialAppDelegate : NSObject {
UIWindow *window;
//UINavigationController *navigationController;
UITabBarController *tabController;
// Database variables
NSString *databaseName;
NSString *databasePath;
// Array to store the animal objects
NSMutableArray *animals;
NSArray *countArray;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UITabBarController *tabController;
@property (nonatomic, retain) NSMutableArray *animals;
@property (nonatomic, retain) NSArray *countArray;
-(void)checkAndCreateDatabase;
-(void)readAnimalsFromDatabase;
-(void) checking;
@end
sqliteAppDelegate.m
#import "SQLiteTutorialAppDelegate.h"
#import "RootViewController.h"
#import "Animal.h" // Import the animal object header
@implementation SQLiteTutorialAppDelegate
@synthesize window;
@synthesize tabController;
@synthesize animals, countArray; // Synthesize the aminals array
- (void)applicationDidFinishLaunching:(UIApplication *)application {
// Setup some globals
databaseName = @"Tips.sqlite";
// Get the path to the documents directory and append the databaseName
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [documentPaths objectAtIndex:0];
databasePath = [documentsDir stringByAppendingPathComponent:databaseName];
// Execute the "checkAndCreateDatabase" function
[self checkAndCreateDatabase];
// Query the database for all animal records and construct the "animals" array
[self readAnimalsFromDatabase];
[self checking];
// Configure and show the window
[window addSubview:[tabController view]];
[window makeKeyAndVisible];
}
- (void)applicationWillTerminate:(UIApplication *)application {
// Save data if appropriate
}
- (void)dealloc {
[animals release];
[tabController release];
[window release];
[super dealloc];
}
-(void) checkAndCreateDatabase{
// Check if the SQL database has already been saved to the users phone, if not then copy it over
BOOL success;
// Create a FileManager object, we will use this to check the status
// of the database and to copy it over if required
NSFileManager *fileManager = [NSFileManager defaultManager];
// Check if the database has already been created in the users filesystem
success = [fileManager fileExistsAtPath:databasePath];
// If the database already exists then return without doing anything
if(success) return;
// If not then proceed to copy the database from the application to the users filesystem
// Get the path to the database in the application package
NSString *databasePathFromApp = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:databaseName];
// Copy the database from the package to the users filesystem
[fileManager copyItemAtPath:databasePathFromApp toPath:databasePath error:nil];
[fileManager release];
}
-(void) readAnimalsFromDatabase {
// Setup the database object
sqlite3 *database;
// Init the animals Array
NSMutableArray *animals2 = [[NSMutableArray alloc] init];
// Open the database from the users filessytem
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
// Setup the SQL Statement and compile it for faster access
const char *sqlStatement = "select * from Tips_Cat";
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
// Loop through the results and add them to the feeds array
while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
// Read the data from the result row
NSString *aName = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 1)];
NSString *aNameCount = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 3)];
// Create a new animal object with the data from the database
int d= [aNameCount intValue];
Animal *animal = [[Animal alloc] initWithName:aName and :[NSNumber numberWithInteger:d]];
// Add the animal object to the animals Array
[animals2 addObject:animal];
[animal release];
}
}
// Release the compiled statement from memory
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
self.animals=animals2;
[animals2 release];
}
-(void) checking
{
sqlite3 *database;
// Open the database from the users filessytem
NSMutableArray *tempArray1 = [[NSMutableArray alloc]init];
if(sqlite3_open([databasePath UTF8String], &database) == SQLITE_OK) {
// Setup the SQL Statement and compile it for faster access
const char *sqlStatement = "select count(*) from Tips group by tip_cat_id";
sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
// Loop through the results and add them to the feeds array
while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
// sqlite3_col
int d;
d=sqlite3_column_int(compiledStatement,0);
//NSLog(@"count==%d",d);
NSNumber *n1=[NSNumber numberWithInteger:d];
[tempArray1 addObject:n1];
//[tempArray1 addobject:[NSNumber numberWithInteger:d]];
//NSLog(@"count==%d",countArray);
}
}
// Release the compiled statement from memory
sqlite3_finalize(compiledStatement);
}
sqlite3_close(database);
self.countArray = tempArray1;
[tempArray1 release];
}
@end
RootViewController.h
#import <UIKit/UIKit.h>
#import "AnimalViewController.h"
#import "textController.h"
#import "favoriteController.h"
#import "CustomCell.h"
#import <sqlite3.h>
AnimalViewController *animalView;
NSString *databaseName1;NSString *databasePath1;
NSMutableArray *sampleArray;
int totCountView;
IBOutlet UIImageView *navBarImage;
IBOutlet UIImageView *bgImage;
IBOutlet UIImageView *back1Image;
IBOutlet UIImageView *back2Image;
}
@property(nonatomic,retain)NSMutableArray *sampleArray;
-(NSMutableArray *) readAnimalsFromDatabase:(int)z;
@property int totCountView;
@property(nonatomic, retain)IBOutlet UIImageView *navBarImage;
@property(nonatomic, retain)IBOutlet UIImageView *bgImage;
@property(nonatomic, retain)IBOutlet UIImageView *back1Image;
@property(nonatomic, retain)IBOutlet UIImageView *back2Image;
@end
RootViewController.m
#import "RootViewController.h"
#import "SQLiteTutorialAppDelegate.h"
#import "AnimalViewController.h"
#import "textController.h"
#import "Animal.h"
return 1;
}
SQLiteTutorialAppDelegate *appDelegate = (SQLiteTutorialAppDelegate *)[[UIApplication sharedApplication] delegate];
totCountView = appDelegate.animals.count;return appDelegate.animals.count;
{
return 61;
}
SQLiteTutorialAppDelegate *appDelegate = (SQLiteTutorialAppDelegate *)[[UIApplication sharedApplication] delegate];
Animal *animal = (Animal *)[appDelegate.animals objectAtIndex:indexPath.row];CustomCell *cellDisp = [[CustomCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:nil title:displayText and:indexPath.row];
cellDisp.backgroundColor=[UIColor clearColor];
return cellDisp;}
SQLiteTutorialAppDelegate *appDelegate = (SQLiteTutorialAppDelegate *)[[UIApplication sharedApplication] delegate];
Animal *animal = (Animal *)[appDelegate.animals objectAtIndex:indexPath.row];
AnimalViewController *viewController = [[AnimalViewController alloc] initWithNibName:@"AnimalViewController" bundle:nil];
viewController.accessArray= [self readAnimalsFromDatabase:indexPath.row+1];viewController.printTitle = animal.name;
[viewController release];
}
{
databaseName1=@"Tips.sqlite";
self.view.backgroundColor = [UIColor clearColor];
// self.title = @"Quotes List";
[self.navigationController setNavigationBarHidden:YES];
navBarImage = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"topbg.png"]];
[self.navigationController.view addSubview:navBarImage];
self.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Bg.png"]];
self.view.backgroundColor = background;[background release];
label.backgroundColor = [UIColor clearColor];
label.font = [UIFont boldSystemFontOfSize:20.0];label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
label.textAlignment = UITextAlignmentCenter;
label.textColor = [UIColor whiteColor];
self.navigationItem.titleView = label;
label.text = @"Quote Book";
[self.navigationController.view addSubview:label];
[label release];
[super viewDidLoad];
}{
// Setup the database object
sqlite3 *database;NSMutableArray *mutableArray = [[NSMutableArray alloc ]init];
// Init the animals Array
NSArray *myArrayName = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDir = [myArrayName objectAtIndex:0];
databasePath1 = [documentsDir stringByAppendingPathComponent:databaseName1];
// Open the database from the users filessytem
if(sqlite3_open([databasePath1 UTF8String], &database) == SQLITE_OK) {
NSString *stringName = [NSString stringWithFormat:@"SELECT tip_text FROM Tips where tip_cat_id=%d",z];
// Setup the SQL Statement and compile it for faster access
const char *sqlStatement = [stringName UTF8String];sqlite3_stmt *compiledStatement;
if(sqlite3_prepare_v2(database, sqlStatement, -1, &compiledStatement, NULL) == SQLITE_OK) {
// Loop through the results and add them to the feeds array
while(sqlite3_step(compiledStatement) == SQLITE_ROW) {
// Read the data from the result row
NSString *aName1 = [NSString stringWithUTF8String:(char *)sqlite3_column_text(compiledStatement, 0)]; [mutableArray addObject:aName1];
}
}
// Release the compiled statement from memory
sqlite3_finalize(compiledStatement);}
sqlite3_close(database);
self.sampleArray=mutableArray;[mutableArray release];
return self.sampleArray;
}
/*
// Override to support editing the list
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the row from the data source
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:YES];
}
if (editingStyle == UITableViewCellEditingStyleInsert) {
// Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
}
}
*/
/*
// Override to support conditional editing of the list
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {
// Return NO if you do not want the specified item to be editable.
return YES;
}
*/
/*
// Override to support rearranging the list
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {
}
*/
/*
// Override to support conditional rearranging of the list
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {
// Return NO if you do not want the item to be re-orderable.
return YES;
}
*/
/*
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
}
*/
/*
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
}s
*/
/*
- (void)viewWillDisappear:(BOOL)animated {
}
*/
/*
- (void)viewDidDisappear:(BOOL)animated {
}
*/
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);}
[super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview
// Release anything that's not essential, such as cached data
}
[animalView release];
[sampleArray release];
[super dealloc];}
CustomCell.h
//
// CustomCell.h
// SQLiteTutorial
//
// Created by AEL DATA on 22/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import <UIKit/UIKit.h>
CustomCell.m
//
// CustomCell.m
// SQLiteTutorial
//
// Created by AEL DATA on 22/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import "CustomCell.h"
if (self!=nil){
UIImageView *image =[[UIImageView alloc]initWithFrame:CGRectMake(0,0,320,61)];
UIImage *setImage = (index%2==0)?[UIImage imageNamed:@"tile1.png"]:[UIImage imageNamed:@"tile2.png"];
image.image = setImage;
[self addSubview:image];
[image release];
imagelabel.backgroundColor=[UIColor clearColor];
imagelabel.text = title;
[self addSubview:imagelabel];
[imagelabel release];
}
return self;
}
{
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
Animal.h
#import <UIKit/UIKit.h>
NSString *name;
NSNumber *nameCount;
}
Animal.m
#import "Animal.h"
@synthesize name;
@synthesize nameCount;
self.name = n;
self.nameCount = a;
return self;
}
-(void)dealloc
{
[super dealloc];
[name release];
[nameCount release];
}@end
AnimalViewController.h
#import <UIKit/UIKit.h>
#import <sqlite3.h>
#import "CustomCell.h"
IBOutlet UITableView *Desciption;
NSMutableArray *accessArray;
NSString *printTitle;
AnimalViewController.m
#import "AnimalViewController.h"
#import "textController.h"
/*
// Override initWithNibName:bundle: to load the view using a nib file then perform additional customization that is not appropriate for viewDidLoad.
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {
if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
// Custom initialization
}
return self;
}
*/
/*
// Implement loadView to create a view hierarchy programmatically.
- (void)loadView {
}
*/
// Implement viewDidLoad to do additional setup after loading the view.
- (void)viewDidLoad{
// self.title = printTitle;
[self.navigationController.view addSubview:back1Image];
self.view.frame = CGRectMake(300, 300, self.view.frame.size.width, self.view.frame.size.height);
[back1Image release];
label.backgroundColor = [UIColor clearColor];
label.font = [UIFont boldSystemFontOfSize:20.0];
label.shadowColor = [UIColor colorWithWhite:0.0 alpha:0.5];
label.textAlignment = UITextAlignmentCenter;
label.textColor = [UIColor whiteColor];
self.navigationItem.titleView = label;
label.text = printTitle;
[self.navigationController.view addSubview:label];
[label release];
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Bg.png"]];
self.view.backgroundColor = background;[background release];
[super viewDidLoad];
}textController *viewController = [[textController alloc] initWithNibName:@"textController" bundle:nil];
viewController.printState= [accessArray objectAtIndex:indexPath.row];
viewController.printArray= accessArray;
viewController.count = indexPath.row;
[viewController release];
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);}
[super didReceiveMemoryWarning]; // Releases the view if it doesn't have a superview
// Release anything that's not essential, such as cached data
}[super dealloc];
[Desciption release];
[accessArray release];
}return 61;
}
return [accessArray count];
}
/* static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
} */
CustomCell *cellDisp = [[CustomCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:nil title:displayText and:indexPath.row];
cellDisp.backgroundColor=[UIColor clearColor];
return cellDisp;}
textViewController.h
//
// textController.h
// SQLiteTutorial
//
// Created by AEL DATA on 01/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import <UIKit/UIKit.h>
#import <sqlite3.h>
#import <MessageUI/MFMessageComposeViewController.h>
#import <MessageUI/MFMailComposeViewController.h>
@interface textController : UIViewController <UIAlertViewDelegate>
{NSString *printState;
IBOutlet UITextView *textView;
IBOutlet UITextField *textCountView;
NSArray *textArray;
NSString *txtCntrlr;
NSArray *printArray;
NSString *tCount;
int count;
IBOutlet UIButton *mailBtn;
IBOutlet UIButton *favBtn;
IBOutlet UIButton *remvefavBtn;
@property(nonatomic, retain)IBOutlet UITextView *textView;
@property(nonatomic, retain)IBOutlet UITextField *textCountView;
@property(nonatomic, retain)NSArray *textArray;
@property(nonatomic, retain)NSString *txtCntrlr;
@property (nonatomic, retain) NSArray *printArray;
@property(nonatomic, retain) IBOutlet UIButton *smsBtn;
@property(nonatomic, retain) IBOutlet UIButton *mailBtn;
@property(nonatomic, retain) IBOutlet UIButton *favBtn;
@property(nonatomic, retain) NSString *tCount;
@property(nonatomic, retain)IBOutlet UIButton *remvefavBtn;
@property int count;
- (IBAction)mailbuttonPressed:(id)sender;
- (IBAction)favbuttonPressed:(id)sender;
-(IBAction)remvefavBtnPressed:(id)sender;
-(void)launchMailAppOnDevice;
textViewController.m
//
// textController.m
// SQLiteTutorial
//
// Created by AEL DATA on 01/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import "textController.h"
#import "favoriteController.h"
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}return self;
}
- (void)didReceiveMemoryWarning
{
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
#pragma mark - View lifecycle
{
textView.text = printState;
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Bg.png"]];
self.view.backgroundColor = background;[background release];
tCount = [[NSString alloc]initWithString:totCountStr];
// -----------------------------
// One finger, swipe Left
// -----------------------------
[[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeUp:)] autorelease];
[oneFingerSwipeUp setDirection:UISwipeGestureRecognizerDirectionLeft];
[[self view] addGestureRecognizer:oneFingerSwipeUp];
// -----------------------------
// One finger, swipe Right
// -----------------------------
UISwipeGestureRecognizer *oneFingerSwipeDown =[[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeDown:)] autorelease];
[oneFingerSwipeDown setDirection:UISwipeGestureRecognizerDirectionRight];
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
}{
if(count<[printArray count]-1)
{count++;
NSString *countStr = [[NSNumber numberWithInt:count+1] stringValue];
textCountView.text =[NSString stringWithFormat:@"%@ / %@",countStr,tCount];
//[self fadeInFromFadeOut:textView withDuration:2];
textView.text= [printArray objectAtIndex:count];
}
//CGPoint point = [recognizer locationInView:[self view]];
// NSLog(@"Swipe up - start location: %f,%f", point.x, point.y);
}{
if(count>=1)
{
NSString *countStr = [[NSNumber numberWithInt:count] stringValue];
textCountView.text =[NSString stringWithFormat:@"%@ / %@",countStr,tCount];
count--;
//[self fadeInFromFadeOut:textView withDuration:2];
textView.text= [printArray objectAtIndex:count];
}
//CGPoint point = [recognizer locationInView:[self view]];
//NSLog(@"Swipe down - start location: %f,%f", point.x, point.y);
}{
[UIView beginAnimations: @"Fade Out" context:nil];
// wait for time before begin
[UIView setAnimationDelay:wait];
// duration of animation
[UIView setAnimationDuration:duration];
viewToDissolve.alpha = 0.0;
[UIView commitAnimations];
}{
[UIView beginAnimations: @"Fade In" context:nil];
// wait for time before begin
[UIView setAnimationDelay:wait];
// druation of animation
[UIView setAnimationDuration:duration];
viewToFadeIn.alpha = 1;
[UIView commitAnimations];
}{
viewToFadeIn.hidden=NO;
[self fadeOut:viewToFadeIn withDuration:1 andWait:0.2];
[self fadeIn:viewToFadeIn withDuration:duration andWait:0.2]; }
{
NSArray *documentDirectory=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentPath=[documentDirectory objectAtIndex:0];NSString *plistPath = [documentPath stringByAppendingPathComponent:@"favourite.plist"];
NSFileManager *fileManager=[NSFileManager defaultManager];
//[[NSMutableArray alloc]init];
if ([fileManager fileExistsAtPath:plistPath]){
NSMutableArray *plistArray= [[NSMutableArray alloc] initWithContentsOfFile:plistPath];
[plistArray addObject:textView.text];
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistArray
format:NSPropertyListXMLFormat_v1_0 errorDescription:nil];
[plistData writeToFile:plistPath atomically:YES];[plistArray release];
}
else {
NSMutableArray *plistArray=[[NSMutableArray alloc]init];
[plistArray addObject:textView.text];
NSData *plistData = [NSPropertyListSerialization dataFromPropertyList:plistArray
format:NSPropertyListXMLFormat_v1_0 errorDescription:nil];
[plistData writeToFile:plistPath atomically:YES];[plistArray release];
}
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Added" message:@"Quote has been added to favourite!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert show];[alert release];
}
{
{
[self sendSMS:textView.text recipientList:[NSArray arrayWithObjects:@"", @"", nil]];
}{
[self dismissModalViewControllerAnimated:YES];
if (result == MessageComposeResultCancelled)
{
//NSLog(@"Message cancelled");
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message" message:@"Message cancelled!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert show];[alert release];
}
else if (result == MessageComposeResultSent)
{
//NSLog(@"Message sent");
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message" message:@"Message sent!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert show];[alert release];
}
else
{
//NSLog(@"Message failed");
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Message" message:@"Message failed!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert show];[alert release];
}
}
{
MFMessageComposeViewController *controller = [[[MFMessageComposeViewController alloc] init] autorelease];
if([MFMessageComposeViewController canSendText])
{controller.body = bodyOfMessage;
controller.recipients = recipients;
controller.messageComposeDelegate = self;
[self presentModalViewController:controller animated:YES];
} }
{
// This sample can run on devices running iPhone OS 2.0 or later
// The MFMailComposeViewController class is only available in iPhone OS 3.0 or later.
// So, we must verify the existence of the above class and provide a workaround for devices running
// earlier versions of the iPhone OS.
// We display an email composition interface if MFMailComposeViewController exists and the device can send emails.
// We launch the Mail application on the device, otherwise.
Class mailClass = (NSClassFromString(@"MFMailComposeViewController"));
if (mailClass != nil){
// We must always check whether the current device is configured for sending emails
if ([mailClass canSendMail]){
[self displayComposerSheet];
}else
{
[self launchMailAppOnDevice];
}}
else
{
[self launchMailAppOnDevice];
}}
// Displays an email composition interface inside the application. Populates all the Mail fields.
-(void)displayComposerSheet{
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
// Set up recipients
NSArray *toRecipients = [[NSArray alloc]init];NSArray *ccRecipients = [[NSArray alloc]init];
NSArray *bccRecipients = [[NSArray alloc]init];
[picker setCcRecipients:ccRecipients];
[picker setBccRecipients:bccRecipients];
// Fill out the email body text
NSString *emailBody = textView.text;[picker setMessageBody:emailBody isHTML:NO];
[self presentModalViewController:picker animated:YES];
[picker release];}
// Dismisses the email composition interface when users tap Cancel or Send. Proceeds to update the message field with the result of the operation.
- (void)mailComposeController:(MFMailComposeViewController*)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError*)error{
// Notifies users about errors associated with the interface
switch (result){
case MFMailComposeResultCancelled:
//message.text = @"Result: canceled";
;
UIAlertView *alert1 = [[UIAlertView alloc] initWithTitle:@"Email" message:@"Cancelled!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert1 show];[alert1 release];
break;
case MFMailComposeResultSaved:
//message.text = @"Result: saved";
;
UIAlertView *alert2 = [[UIAlertView alloc] initWithTitle:@"Email" message:@"Saved!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert2 show];[alert2 release];
break;
case MFMailComposeResultSent:
//message.text = @"Result: sent";
;
UIAlertView *alert3 = [[UIAlertView alloc] initWithTitle:@"Email" message:@"Sent!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert3 show];[alert3 release];
break;
case MFMailComposeResultFailed:
//message.text = @"Result: failed";
;
UIAlertView *alert4 = [[UIAlertView alloc] initWithTitle:@"Email" message:@"Failed!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert4 show];[alert4 release];
break;
default:
//message.text = @"Result: not sent";
;
UIAlertView *alert5 = [[UIAlertView alloc] initWithTitle:@"Message" message:@"Not sent!" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:/*@"CANCEL",*/ nil];
[alert5 show];[alert5 release];
break;
}
[self dismissModalViewControllerAnimated:YES];
}
#pragma mark -
#pragma mark Workaround
// Launches the Mail application on the device.
-(void)launchMailAppOnDevice{
NSString *recipients = @"";
NSString *body = @"";
email = [email stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);}
favoriteView.h
//
// favoriteController.h
// SQLiteTutorial
//
// Created by AEL DATA on 08/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import <UIKit/UIKit.h>
{
NSString *favState;
NSMutableArray *favArray;
IBOutlet UIImageView *navBarImage;
@property (nonatomic, retain) NSString *favState;
@property (nonatomic, retain) NSArray *favArray;
@property (nonatomic, retain) IBOutlet UITableView *atableview;
@property (nonatomic, retain) IBOutlet UIImageView *navBarImage;
@end
favorite.m
//
// favoriteController.m
// SQLiteTutorial
//
// Created by AEL DATA on 08/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import "favoriteController.h"
#import "fView.h"
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}return self;
}
{
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
#pragma mark - View lifecycle
-(void)viewWillAppear:(BOOL)animated{
[super viewWillAppear:YES];
-(void)viewDidAppear:(BOOL)animated
{
NSArray *documentDirectory=NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,NSUserDomainMask, YES);
NSString *documentPath=[documentDirectory objectAtIndex:0];NSString *plistPath = [documentPath stringByAppendingPathComponent:@"favourite.plist"];
favArray= [[NSMutableArray alloc] initWithContentsOfFile:plistPath];
[atableview reloadData];
[super viewDidAppear:YES];
}- (void)viewDidLoad
{
self.title = @"Favorites";
[self.navigationController setNavigationBarHidden:YES];
navBarImage = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"topbg.png"]];
[self.navigationController.view addSubview:navBarImage];
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Bg.png"]];
self.view.backgroundColor = background;[background release];
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
}- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 1;
}
return [favArray count];
}if (cell == nil) {
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}
cell.accessoryView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"page_8.png"]];
}
- (void)viewDidUnload
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);}
{
fView*new = [[fView alloc]initWithNibName:@"fView" bundle:[NSBundle mainBundle]];
new.dispStr= [favArray objectAtIndex:indexPath.row];
new.dispArr= favArray;
new.countInt = indexPath.row;
[self.navigationController pushViewController:new animated:YES];
[new release];}
fView.h
//
// fView.h
// SQLiteTutorial
//
// Created by AEL DATA on 11/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface fView : UIViewController
{IBOutlet UITextView *txtView;
NSString *dispStr;
NSArray *dispArr;
int countInt;
NSString *totFavCount;
NSString *totFCount;
NSString *tCounts;
}
@end
fView.m
//
// fView.m
// SQLiteTutorial
//
// Created by AEL DATA on 11/11/11.
// Copyright 2011 __MyCompanyName__. All rights reserved.
//
#import "fView.h"
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}return self;
}
{
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
#pragma mark - View lifecycle
{
txtView.text = dispStr;
self.title = @"Favorites";
UIColor *background = [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"Bg.png"]];
self.view.backgroundColor = background;[background release];
tCounts = [[NSString alloc]initWithString:totCountStrg];
// -----------------------------
// One finger, swipe Left
// -----------------------------
[[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeUp:)] autorelease];
[oneFingerSwipeUp setDirection:UISwipeGestureRecognizerDirectionLeft];
[[self view] addGestureRecognizer:oneFingerSwipeUp];
// -----------------------------
// One finger, swipe Right
// -----------------------------
UISwipeGestureRecognizer *oneFingerSwipeDown =[[[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(oneFingerSwipeDown:)] autorelease];
[oneFingerSwipeDown setDirection:UISwipeGestureRecognizerDirectionRight];
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
}{
if(countInt<[dispArr count]-1)
{countInt++;
NSString *countStrg = [[NSNumber numberWithInt:countInt+1] stringValue];
textFeild.text =[NSString stringWithFormat:@"%@ / %@",countStrg,tCounts];
//[self fadeInFromFadeOut:textView withDuration:2];
txtView.text= [dispArr objectAtIndex:countInt];
}
//CGPoint point = [recognizer locationInView:[self view]];
//NSLog(@"Swipe up - start location: %f,%f", point.x, point.y);
}{
if(countInt>=1)
{
NSString *countStrg = [[NSNumber numberWithInt:countInt] stringValue];
textFeild.text =[NSString stringWithFormat:@"%@ / %@",countStrg,tCounts];
//[self fadeInFromFadeOut:textView withDuration:2];
txtView.text= [dispArr objectAtIndex:countInt];
}
//CGPoint point = [recognizer locationInView:[self view]];
//NSLog(@"Swipe down - start location: %f,%f", point.x, point.y);
}{
[UIView beginAnimations: @"Fade Out" context:nil];
// wait for time before begin
[UIView setAnimationDelay:wait];
// duration of animation
[UIView setAnimationDuration:duration];
viewToDissolve.alpha = 0.0;
[UIView commitAnimations];
}{
[UIView beginAnimations: @"Fade In" context:nil];
// wait for time before begin
[UIView setAnimationDelay:wait];
// druation of animation
[UIView setAnimationDuration:duration];
viewToFadeIn.alpha = 1;
[UIView commitAnimations];
}{
viewToFadeIn.hidden=NO;
[self fadeOut:viewToFadeIn withDuration:1 andWait:0.2];
[self fadeIn:viewToFadeIn withDuration:duration andWait:0.2]; }
{
[super viewDidUnload];
// Release any retained subviews of the main view.
// e.g. self.myOutlet = nil;
}{
// Return YES for supported orientations
return (interfaceOrientation == UIInterfaceOrientationPortrait);}
No comments:
Post a Comment