Showing posts from 2015

Sign in validations in Objective V

- (BOOL)validatePhoneNumber:(NSString *)phoneStr {
    NSString *phoneRegex = @"[789][0-9]{9}";
    NSPredicate *test = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", phoneRegex];
    BOOL matches = [test evaluateWithObject:phoneStr];
    return matches;

- (BOOL)validateEmail:(NSString *)emailStr {
    NSString *emailRegex = @"[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}";
    NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", emailRegex];
    return [emailTest evaluateWithObject:emailStr];

// This method is use to Validate an URL - (BOOL)isValidUrl {     NSString *regex =@"(http|https)://((\\w)*|([0-9]*)|([-|_])*)+([\\.|/]((\\w)*|([0-9]*)|([-|_])*))+";     NSPredicate *urlTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@",regex];     return [urlTest evaluateWithObject:self]; }
// This method is use to Validate an Name - (BOOL)isValidName {     NSCharacterSet * chars = [NSCharacterSetcharacterSetWi…

Youtube player view in iOS

#pragma mark - UIWebViewFactory
+ (UIWebView *)youtubePlayerViewWithFrame:(CGRect)frame andURLString:(NSString *)URLString { UIWebView *videoView = [[UIWebViewalloc] initWithFrame:frame];     videoView.backgroundColor = [UIColorclearColor];     videoView.opaque = NO; NSString *videoHTML = [NSStringstringWithFormat:@"\                            <html>\                            <head>\                            <style type=\"text/css\">\                            iframe {position:absolute; top:0; margin-top:0px;}\                            body {background-color:#000; margin:0;}\                            </style>\                            </head>\                            <body>\                            <iframe width=\"%0.0f\" height=\"%0.0f\" src=\"%@\" frameborder=\"0\" allowfullscreen></iframe>\                            </body>\                            </html>",…

UITable view cell dynamic height - ios7 and above

To set the dynamic height of custom table view cell without creating IBOutlet of height constraint, follow the below code: 

@Interface __weakIBOutletUITableView *tblView; @property (nonatomic, strong) DataViewCustomCell *prototypeCell;

#pragma mark - PrototypeCell - (DataViewCustomCell *)prototypeCell { if (!_prototypeCell) { _prototypeCell = [[[NSBundlemainBundle]loadNibNamed:@"DataViewCustomCell"owner:selfoptions:nil] lastObject];     } return_prototypeCell; }
#pragma mark - Configure
//Here I put the dummy static string on lblDetailLabel. You can put here the dynamic string

- (void)configureCell:(DataViewCustomCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { if (indexPath.row==0)     {         cell.lblTitle.text = @"Mobile Insights - Entertainment Report";         cell.unitedStatsTextLbl.text = @"United States, Q2, 2014";         cell.lblDetailLabel.text = @"The entertainment industry is a diverse industry covering a wide range of sectors like …

Save value in keychain - iOS application

Login and sign up activity is very common in every ios application. Most of the applications follow single sign in process. Single sign in means user have to login only once. Generally developers tend to save values(username, password) in user default. When user delete the application, the values stored in the NSUserDefault also vanishes, then user have to sign in again.

Alternative to NSUserDefault, which save values permanently in keychain:-

Grab the four files (.h and .m) PDKeychainBindingsController folder and add them to your xCode project.Import the header file. #import "PDKeychainBindings.h"
Set object:-
        [[PDKeychainBindingssharedKeychainBindings] setObject:@"Pardeep"forKey:@"key_name"];
Get object from key:-
NSString *folderPath=[[PDKeychainBindingssharedKeychainBindings] objectForKey:@"key_name"];

Remove object:             [[PDKeychainBindingssharedKeychainBindings] removeObjectForKey:@"key_name"];


If you are getti…

Facebook sdk integration using SWIFT in iPhone application

To integrate the Facebook SDK using swift language, follow the below steps:
Download the latest Facebook sdk at a application at Facebook, made necessary changes at plist file. All guided documentation is available at FacebookSDK.Framework to your project.Create a bridging header by follow the below steps (Bridging header is useful when you want to access objective-c code in your swift language).Create a new Objective-C header file by clicking File->New.Give it a name (BridgingHeader.h).Write the import statement in your bridge header file.#import <FacebookSDK/FacebookSDK.h> Goto build settings for your target, find "Swift Compiler – Code Generation" section.Set “Objective-C Bridging Header” to <#PROJECT_NAME>/Bridging-Header.h.“Install Objective-C Compatibility Header”, should be set to “Yes”.Open  AppDelegate.swift and write the below co…