customising UINavigationBar and UIBarButtonItem

UIImage *navBarImage = [UIImage imageNamed:@"nav-bar.png"];

    [[UINavigationBar appearance] setBackgroundImage:navBarImage

forBarMetrics:UIBarMetricsDefault];

    UIImage *barButton = [UIImage imageNamed:@"bar-button.png"];

    [[UIBarButtonItem appearance] setBackgroundImage:barButton
forState:UIControlStateNormal

barMetrics:UIBarMetricsDefault];