Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/114.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在导航栏右侧显示“注销”按钮以从应用程序注销?_Ios - Fatal编程技术网

Ios 如何在导航栏右侧显示“注销”按钮以从应用程序注销?

Ios 如何在导航栏右侧显示“注销”按钮以从应用程序注销?,ios,Ios,如何添加以导航栏右侧按钮的形式将用户从应用程序注销的功能。由于导航栏左侧有一个导航按钮可导航回上一视图。导航栏上是否有两个按钮 登录viewcontroller的代码如下所示: - (IBAction)btnLogin:(id)sender { NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *docsPath =

如何添加以导航栏右侧按钮的形式将用户从应用程序注销的功能。由于导航栏左侧有一个导航按钮可导航回上一视图。导航栏上是否有两个按钮

登录viewcontroller的代码如下所示:

- (IBAction)btnLogin:(id)sender
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
    NSString *docsPath = [paths objectAtIndex:0];
    NSString *path = [docsPath stringByAppendingPathComponent:@"contacts.db"];
    FMDatabase *database = [FMDatabase databaseWithPath:path];

    if ([txtUser.text length] == 0 || [txtPass.text length]== 0){
        UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Error" message:@"Kindly enter details in all fields" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
        [alert show];
    }

    [database open];

    BOOL success = NO;

    NSInteger count = [database intForQuery:@"select count(*) from RegMembers where USERNAME = ? and PASSWORD = ?", txtUser.text, txtPass.text];

    if (count > 0)
    {
        success = YES;
        appDelegate.username = txtUser.text;

        UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Welcome" message:@"Login successful" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
        [alert show];

        carTypeViewController *car = [[carTypeViewController alloc]initWithNibName:@"carTypeViewController" bundle:nil];
        [self.navigationController pushViewController:car animated:YES];
    }
    else
    {
        UIAlertView *alert1 = [[UIAlertView alloc]initWithTitle:@"Kindly enter the correct credentials" message:@"Entered username or password is incorrect" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
        [alert1 show];

        txtUser.text=@"";
        txtPass.text=@"";
    }
    [database close];
}

这很容易。在IB Interface Builder中,打开右侧的实用程序区域,并向上拖动底部托盘以显示UI对象列表。选择UI对象中的小立方体符号(如果还没有)。在底部的搜索框中键入uibarbuttonitem并查找匹配项。将UIBarButtonim从搜索结果拖到视图控制器中导航栏的右侧。当你到达正确的地点时,它应该亮起来。释放它,系统将向导航栏添加一个新的导航项,实际上是当前视图控制器的导航项

添加条形按钮项后,可以使用属性检查器设置其样式和标题,使用连接检查器将其链接到视图控制器中的相应iAction。应该这样做


也可以通过编程方式创建一个bar button项,并在运行时将其添加到中,但这需要更多的工作,并且更难理解所有的设置。大多数情况下,最好从IB开始。这很容易。在IB Interface Builder中,打开右侧的实用程序区域,并向上拖动底部托盘以显示UI对象列表。选择UI对象中的小立方体符号(如果还没有)。在底部的搜索框中键入uibarbuttonitem并查找匹配项。将UIBarButtonim从搜索结果拖到视图控制器中导航栏的右侧。当你到达正确的地点时,它应该亮起来。释放它,系统将向导航栏添加一个新的导航项,实际上是当前视图控制器的导航项

添加条形按钮项后,可以使用属性检查器设置其样式和标题,使用连接检查器将其链接到视图控制器中的相应iAction。应该这样做


也可以通过编程方式创建一个bar button项,并在运行时将其添加到中,但这需要更多的工作,并且更难理解所有的设置。大多数情况下,最好从IB开始。要以编程方式在导航栏上添加按钮,您可以使用以下代码

UIBarButtonItem*rightNavButton=[[UIBarButtonItem alloc]initWithTitle:@logout样式:UIBarbuttonItemStyleBorded目标:自我操作:@selectorlogout:]; self.navigationItem.rightBarButtonItem=rightNavButton

2如果您使用的是界面生成器,则可以将工具栏按钮项拖动到导航栏的右侧


1要以编程方式在导航栏上添加按钮,可以使用以下代码

UIBarButtonItem*rightNavButton=[[UIBarButtonItem alloc]initWithTitle:@logout样式:UIBarbuttonItemStyleBorded目标:自我操作:@selectorlogout:]; self.navigationItem.rightBarButtonItem=rightNavButton

2如果您使用的是界面生成器,则可以将工具栏按钮项拖动到导航栏的右侧


朋友,我在viewdidload下键入的代码引发了一个异常,我的应用程序正在崩溃。您能否共享引发的异常以及一些相关代码(如果可能的话)?异常是:[carTypeViewController logout:]发送到实例的无法识别的选择器您的类中是否有方法-void logout:id sender?否,在我的代码中没有类似的方法。如果你希望我可以将代码放在上面。朋友我在viewdidload下键入的代码正在引发异常,我的应用程序正在崩溃。你能分享引发的异常以及一些相关代码吗?异常是:[carTypeViewController注销:]发送到实例的无法识别的选择器您的类中是否有方法-void logout:id sender?不,我的代码中没有类似的方法。如果您希望我可以将代码放在上面。@BrianShamblen亲爱的朋友,我不认为您提供链接的问题回答了我问题的注销部分,所以我不得不用这个来指定注销关键字。所以我不认为它是重复的,尽管它可能非常相似。@BrianShamblen亲爱的朋友,我不认为你给出链接的问题是回答我问题的注销部分,因此,我必须设置一个指定注销关键字的图标。所以我不认为这是一个重复的图标,尽管它可能非常相似。