Deals Template iOS

Launch your Deal platform for pockets.

The best place to catch people shopping is now their phone, which makes an app the perfect place to start your Deal platform. And we’ve given you a massive head start by building out a super cool UI template. Our Deals template for iOS has beautiful design combined with modern Objective – C code, ready to customise into your app. The clean UI you can see in the app template is needs to be hooked into your platform backend. If you’re looking to build the next Groupon or LivingSocial, start with the best shopping experience there is with this Deal app template.

What’s included in this download

  • App Template Xcode project written in native Objective-C
  • Original layered Adobe Photoshop .psd files you can edit
  • 25+ Sliced .png files
  • Documentation
myapptemplates Deals Template iOS

Launch your Deal platform for pockets. The best place to catch people shopping is now their phone, which makes an app the perfect place to start your Deal platform. And we’ve given you a massive head start by building out a super cool UI template. Our Deals template for iOS has beautiful design combined with […]

  • License Details
  • XCode Sample Project
  • .PSD files
  • Retina support
  • .PNG Artwork
  • iOS 10 optimised
Our iOS and Android app templates are a perfect place to start building awesome apps. Get a functional native code base, eye-catching beautiful artwork with excellent UX, icon artwork and documentation. Make your app so beautiful it can't be ignored

Splash Screen

Login Screen (with Twitter and Facebook buttons)

Deal Feed screen with custom tableviews

Deal detail screen

Profile view

Buy screen

Code Snippet

//
//  DailyDealsViewController.m
//  DailyDeals
//
//  Created by MyAppTemplates Software on 07/04/14.
//  Copyright (c) 2014 MyAppTemplates Software. All rights reserved.
//

#import "DailyDealsViewController.h"
#import "DailyDealsCell.h"
#import "ProfileViewController.h"
#import "DealsDetailsViewController.h"
#import "Container.h"
@interface DailyDealsViewController ()

@end

@implementation DailyDealsViewController

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}
- (void)viewDidLoad
{
    [super viewDidLoad];
	// Do any additional setup after loading the view.
    [[self navigationController] setNavigationBarHidden:YES animated:YES];
  
    //Add side bar on view
    self.appMenu=[[AppMenuView alloc] initWithNibName:@"AppMenuView" bundle:nil];
    
    self.appMenu.delegate=self;

    [self.viewAppMenu addSubview:self.appMenu.view];
   
   
   
    
}
#pragma mark UITableViewDelegate and UITableViewDatasource
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
    return 1;
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    
    
    return 5;
    
    
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    NSString *cellIdentifier=@"DailyDealsCell";

        DailyDealsCell *cell=(DailyDealsCell *)[tableView dequeueReusableCellWithIdentifier:cellIdentifier];
        if (!cell) {
            UIViewController *controller = [[UIViewController alloc]initWithNibName:@"DailyDealsCell" bundle:nil];
            cell= (DailyDealsCell *)controller.view;
            
        }
    
       cell.lblDealsTitle.text=@"Title";
    return cell;

   
    
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
  [self performSegueWithIdentifier:@"DailyDealsToDetails" sender:self];
}
-(IBAction)btnProfileClk:(id)sender
{
    [self performSegueWithIdentifier:@"DailyDealsToProfile" sender:self];
}
-(IBAction)btnSlideManuClk:(id)sender
{
   
    if(!self.btnSlide.selected){
        [self openAppMenu];
        self.btnSlide.selected=YES;
    }else{
       self.btnSlide.selected=NO;
        [self hideAppMenu];
    }
}
-(void)openAppMenu{
    
    tapGesture = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapAction:)];
    tapGesture.delegate=self;
    [self.viewContainer addGestureRecognizer:tapGesture];
    [self moveByX:160.0 animated:YES];
    
}
-(void)hideAppMenu{
    // self.navBack.backgroundColor=[UIColor whiteColor];
    self.btnSlide.selected=NO;
    [self.viewContainer removeGestureRecognizer:tapGesture];
    [self moveByX:0.0 animated:YES];
}
-(void)tapAction:(id)sender
{
    if (self.appMenu) {
        [self hideAppMenu];
    }
}

-(void)moveByX:(CGFloat)x animated:(BOOL)animated{
    
    CGRect rect=self.viewContainer.frame;
    
    rect.origin.x=x;
    
    if(animated){
        
        [UIView beginAnimations:nil context:NULL];
        [UIView setAnimationDuration:.3];
        self.viewContainer.frame=rect;
        [UIView commitAnimations];
        
    }else{
        self.viewContainer.frame=rect;
    }
    
    
}


-(IBAction)btnSearchClk:(id)sender
{
    
}
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([segue.identifier isEqualToString:@"DailyDealsToProfile"]) {
        
         //ProfileViewController *newSegue=segue.destinationViewController;
        //Pass any value to dailyDetails ViewController if require
    }
    if ([segue.identifier isEqualToString:@"DailyDealsToProfile"]) {
        
        //DealsDetailsViewController *newSegue=segue.destinationViewController;
        //Pass any value to dailyDetails ViewController if require
    }
}
- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
- (BOOL)prefersStatusBarHidden {
    return YES;
}
@end

Template Benefits

  • iOS 10 ready
  • iPhone 5/6/7/7+ ready
  • Beautiful, minimal design with excellent UX flow
  • Ready to run right away in Xcode 8
  • Prebuilt functionality saves you hundreds of hours of designing, programming, and testing
  • Customise the template in Xcode to build your own app
  • Adheres to Apple’s strict Human Interface for easier app approval
  • The easiest way to create your own app!