推ViewController

时间:2013-09-14 14:44:34

标签: ios uinavigationbar push pushviewcontroller linphone

我在appDelegate方法中添加了UINavigationBar。请检查我的屏幕截图。在底部是我使用UINavigationBar。在middel的页面历史记录按钮就在那里。

在这里,当我点击历史记录按钮时,它无法转到historyviwcontrooler。因为我不能推动观点。你能告诉我怎么能在这里推。当我点击历史记录时,只有一个叫做另一个类的人只调用了一个调用,只有我给了UI。我在这里怎么样?请帮帮我

#import "UICallButton.h"
#import "LinphoneManager.h"

#import <CoreTelephony/CTCallCenter.h>

@implementation UICallButton

@synthesize addressField;


#pragma mark - Lifecycle Functions

- (void)initUICallButton {
    [self addTarget:self action:@selector(touchUp:) forControlEvents:UIControlEventTouchUpInside];
}

- (id)init {
    self = [super init];
    if (self) {
        [self initUICallButton];
    }
    return self;
}

- (id)initWithFrame:(CGRect)frame {
    self = [super initWithFrame:frame];
    if (self) {
        [self initUICallButton];
    }
    return self;
}

- (id)initWithCoder:(NSCoder *)decoder {
    self = [super initWithCoder:decoder];
    if (self) {
        [self initUICallButton];
    }
    return self;
}   

- (void)dealloc {
    [addressField release];

    [super dealloc];
}


#pragma mark -

- (void)touchUp:(id) sender {


    NSString *address = [addressField text];
    NSString *displayName = nil;
    ABRecordRef contact = [[[LinphoneManager instance] fastAddressBook] getContact:address];
    if(contact) {
        displayName = [FastAddressBook getContactDisplayName:contact];
    }
    [[LinphoneManager instance] call:address displayName:displayName transfer:FALSE];

}

@end

enter image description here

1 个答案:

答案 0 :(得分:2)

基本上,您必须拥有UINavigationController,而不仅仅是UINavigationBar,才能将推送过渡到一个UIViewController

我没有解释如何做到这一点,因为它非常基础,你应该在开始一个真实的项目之前学习和阅读一些书籍/教程。

以下是一些可以帮助您的链接:

  1. A nice tutorial

  2. How to use navigation controllers(来自苹果)

  3. Navigation Controller class reference