-3

in slidebar tableview controller code is like

- (void)loginDone:(UIButton*)sender
{

    if (sender.tag == 1) {

        [self performSegueWithIdentifier:@"postad" sender:sender];
    }
    else if (sender.tag == 2) {

        [self performSegueWithIdentifier:@"wishlist" sender:sender];
    }
    else if (sender.tag == 3) {

        [self performSegueWithIdentifier:@"recentlyviewed" sender:sender];
    }
    else {
        [self performSegueWithIdentifier:@"profile1" sender:sender];
    }
}
- (IBAction)btn_profile:(id)sender
{

    if ([[NSUserDefaults standardUserDefaults] boolForKey:@"isLogin"]) {

        [self performSegueWithIdentifier:@"profile1" sender:sender];
    }
    else {

        [self performSegueWithIdentifier:@"signin" sender:sender];
    }
}

- (IBAction)btn_postAdButton:(id)sender
{

    if ([[NSUserDefaults standardUserDefaults] boolForKey:@"isLogin"]) {

        [self performSegueWithIdentifier:@"postads" sender:sender];
    }
    else {

        [self performSegueWithIdentifier:@"signin" sender:sender];
    }
}

- (IBAction)btn_Wishlist:(id)sender
{

    if ([[NSUserDefaults standardUserDefaults] boolForKey:@"isLogin"]) {

        [self performSegueWithIdentifier:@"wishlist" sender:sender];
    }
    else {

        [self performSegueWithIdentifier:@"signin" sender:sender];
    }
}

- (IBAction)btn_recentlyViewed:(id)sender
{

    if ([[NSUserDefaults standardUserDefaults] boolForKey:@"isLogin"]) {

        [self performSegueWithIdentifier:@"recentlyviewed" sender:sender];
    }
    else {

        [self performSegueWithIdentifier:@"signin" sender:sender];
    }
}

[_lbl_errormsg setText:errormsg];
NSUserDefaults* userData = [NSUserDefaults standardUserDefaults];
[userData setBool:YES forKey:@"isLogin"];
NSLog(@"data sotre");
[user

        Data synchronize];

if (self.delegate != nil && [self.delegate respondsToSelector:@selector(loginDone:)]) {
    [self.delegate loginDone:sender];
}
[self dismissViewControllerAnimated:YES completion:nil];
}

- (void)prepareForSegue:(UIStoryboardSegue*)segue sender:(id)sender
{

    if ([segue.identifier isEqualToString:@"signin"]) {

        UINavigationController* nav = segue.destinationViewController;

        SignInViewController* objSigninViewcontroller = (SignInViewController*)nav.topViewController;

        objSigninViewcontroller.delegate = self;
    }

    in signin view controller loginDone : method is not calling while i am tracing data.

        - (IBAction)btn_signIn : (id)sender
    {

        NSString* email, *pwd, *errormsg;

        email = _txt_email.placeholder;

        pwd = _txt_pwd.placeholder;

        errormsg = nil;

        [_lbl_errormsg setFont:[UIFont systemFontOfSize:12]];

        _lbl_errormsg.textColor = [UIColor colorWithRed:100 green:0 blue:0 alpha:1.0];

        if (_txt_email.text.length < 1 && _txt_pwd.text.length < 1) {

            [_lbl_errormsg setText:[NSString stringWithFormat:@"Enter your %@ and %@", email, pwd]];
        }

        else if (_txt_email.text.length < 1) {

            [_lbl_errormsg setText:[NSString stringWithFormat:@"Enter %@ Address ", email]];

            return;
        }

        else if (_txt_email.text.length > 0) {

            if (![_txt_email.text isvalidEmail]) {

                [_lbl_errormsg setText:[NSString stringWithFormat:@"Enter your valid %@", email]];

                return;
            }

            else {

                [_lbl_errormsg setText:errormsg];

                NSUserDefaults* userData = [NSUserDefaults standardUserDefaults];

                [userData setBool:YES forKey:@"isLogin"];

                [userData synchronize];

                `if (self.delegate != nil && [self.delegate` respondsToSelector:@selector(loginDone:)])
                {

                    [self.delegate loginDone:sender];
                }

                [self dismissViewControllerAnimated:YES completion:nil];
            }

            if (_txt_pwd.text.length > 1) {

                if (![_txt_pwd.text isvalidPassword]) {

                    [_lbl_errormsg setText:[NSString stringWithFormat:@"Please Enter atleast 6 character for %@", pwd]];
                }

                else {

                    [_lbl_errormsg setText:errormsg];
                }
            }

            else {

                [_lbl_errormsg setText:[NSString stringWithFormat:@"Please Enter for %@", pwd]];
            }
        }

        else

            [_lbl_errormsg setText:[NSString stringWithFormat:@"Enter your %@ Address", email]];
    }

and i had put buttons on each cell and given segue identifier.

Ashish Kakkad
  • 23,586
  • 12
  • 103
  • 136
sharma
  • 1
  • 2

1 Answers1

0

Use This code:

NSIndexPath *myindexpath1 = [self.tableView indexPathForSelectedRow];
    long row1 = [myindexpath1 row];

This gives you indexpath of row.

While passing data in prepareForSegue use like this:

  x[row1]; 
Daljeet
  • 1,573
  • 2
  • 20
  • 40