programing

UI 도구 모음에 왼쪽 화살표 단추(예: UI 탐색 모음의 "뒤로" 스타일) 만들기

lastcode 2023. 4. 27. 22:28
반응형

UI 도구 모음에 왼쪽 화살표 단추(예: UI 탐색 모음의 "뒤로" 스타일) 만들기

저는 "뒤로" 왼쪽 화살표-베젤 버튼을 만들고 싶습니다.UIToolbar.

로는, 중 은 내가아는한중, 들하얻유방는은법일한를나이것방▁as은▁to법▁leave▁way▁the유▁is,한일▁only한▁to▁one▁of얻내▁these는가,▁get.UINavigationController기본 설정에서 왼쪽 막대 항목에 하나를 사용합니다.하지만 내가 그것을 만들 방법을 찾을 수 없습니다.UIBarButtonItem그래서 나는 표준으로 만들 수 없습니다.UIToolbar그것들이 매우 비슷하더라도.UINavigationBars의

버튼 이미지로 수동으로 만들 수는 있지만 원본 이미지를 찾을 수 없습니다.알파 채널 에지를 가지고 있기 때문에 스크린샷과 컷팅은 다양한 결과를 얻지 못합니다.

사용하려는 모든 크기와 색상에 대해 스크린샷 이외의 아이디어가 있습니까?

업데이트: 질문을 회피하지 말고 이 질문을 하지 말고 사용해야 한다고 제안하십시오.UINavigationBar<Instapapaper Pro>입니다.하단 툴바(공간을 절약하고 읽을 수 있는 콘텐츠 영역을 최대화하기 위해)만 표시되며, 하단에 왼쪽 화살표 모양의 뒤로 버튼을 넣고 싶습니다.

제게 이렇게 할 필요가 없다고 말하는 것은 답이 아니며 분명히 현상금을 걸 자격이 없습니다.

http://www.teehanlax.com/blog/ ?p=447에서 파생된 다음 psd를 사용했습니다.

http://www.chrisandtennille.com/pictures/backbutton.psd

그런 다음 도구 모음 항목의 customView 속성에 사용하는 사용자 정의 UIView를 생성했습니다.

저한테는 잘 맞습니다.


편집: 프레리 히포가 지적한 바와 같이, maralbjo는 다음과 같은 간단한 코드를 사용하여 트릭(묶음으로 사용자 지정 이미지 필요)을 이 답변과 결합해야 한다는 것을 발견했습니다.다음은 추가 코드입니다.

// Creates a back button instead of default behaviour (displaying title of previous screen)
UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"back_arrow.png"]
                                                               style:UIBarButtonItemStyleBordered
                                                              target:self
                                                              action:@selector(backAction)];

tipsDetailViewController.navigationItem.leftBarButtonItem = backButton;
[backButton release];

유니코드 방식

유니코드 문자를 사용하여 작업을 수행하는 것이 훨씬 쉽다고 생각합니다.유니코드 삼각형 또는 유니코드 화살표를 검색하여 화살표를 살펴볼 수 있습니다.iOS6부터 애플은 캐릭터를 테두리가 있는 이모지 캐릭터로 변경했습니다.테두리를 비활성화하려면 0xFE0E Unicode Variation Selector를 추가합니다.

NSString *backArrowString = @"\U000025C0\U0000FE0E"; //BLACK LEFT-POINTING TRIANGLE PLUS VARIATION SELECTOR

UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:backArrowString style:UIBarButtonItemStylePlain target:nil action:nil];
self.navigationItem.leftButtonItem = backBarButtonItem;

코드 블록은 데모용입니다.NS 문자열을 허용하는 모든 버튼에서 작동합니다.

전체 문자 목록을 보려면 Google에서 유니코드 문자 및 원하는 항목을 검색합니다.여기 검은색 왼쪽 삼각형의 항목이 있습니다.

결과

결과

경고: iOS 6에서 이 기능이 작동하지 않을 것이라는 보고가 있습니다.이것은 이전 버전의 OS에서만 작동할 수 있습니다.분명히 적어도 하나의 개발자가 이 트릭을 사용하여 앱을 거부했습니다(댓글 참조).사용자의 책임 하에 사용하십시오.이미지(위 답변 참조)를 사용하는 것이 더 안전한 해결책일 수 있습니다.

이 작업은 올바른 모양을 얻기 위해 sekr1t 버튼 유형 101을 사용하여 자신의 이미지 파일에 추가하지 않고도 수행할 수 있습니다.나에게 비결은 내가 사용할 수 있는 것을 알아내는 것이었습니다.initWithCustomView다음을 생성합니다.BarButtonItem저는 개인적으로 이것이 필요했습니다. 그것보다 역동적인 나비바를 위해서요.toolbar하지만 툴바로 테스트해보니 코드가 거의 똑같습니다.

// create button
UIButton* backButton = [UIButton buttonWithType:101]; // left-pointing shape!
[backButton addTarget:self action:@selector(backAction) forControlEvents:UIControlEventTouchUpInside];
[backButton setTitle:@"Back" forState:UIControlStateNormal];

// create button item -- possible because UIButton subclasses UIView!
UIBarButtonItem* backItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];

// add to toolbar, or to a navbar (you should only have one of these!)
[toolbar setItems:[NSArray arrayWithObject:backItem]];
navItem.leftBarButtonItem = backItem;

도구 모음에서 이 작업을 수행하는 경우 항목을 설정하는 방법을 조정해야 하지만 나머지 코드에 따라 다르므로 독자를 위한 연습으로 남겨둡니다. :P 이 샘플은 저에게 효과가 있었습니다(컴파일 및 실행).

이런, HIG를 읽고 문서화되지 않은 기능을 사용하지 마십시오.지원되는 단추 유형은 6개뿐이며 이 중 하나가 아닙니다.

여기에 이미지 설명 입력

우선 뒤로 버튼의 이미지를 찾아야 합니다.저는 아이폰에서 모든 그래픽을 추출하는 Extractor라는 멋진 앱을 사용했습니다.iOS7에서 나는 간신히 이미지를 검색할 수 있었습니다.UINavigationBarBackIndicatorDefault그리고 그것은 빨간색이 필요했기 때문에 검은색이었습니다. 저는 김프를 사용하여 색상을 빨간색으로 변경합니다.

편집:

bette가 그의 코멘트에서 언급했듯이, 이미지 편집기로 색상을 변경할 필요가 없습니다.다음 코드가 유용해야 합니다.

imageView.tint = [UIColor redColor];
imageView.image = [[UIImage imageNamed:@"UINavigationBarBackIndicatorDefault"] imageWithRenderingMode:UIImageRenderingModeAlwaysTemplate];

그런 다음 해당 화살표가 있는 imageView, 사용자 지정 텍스트가 있는 레이블이 포함된 보기를 만들었습니다. 보기 위에는 작업이 있는 단추가 있습니다.그런 다음 간단한 애니메이션(페이드 및 번역)을 추가했습니다.

다음 코드는 애니메이션을 포함하여 뒤로 버튼의 동작을 시뮬레이션합니다.

-(void)viewWillAppear:(BOOL)animated{
        UIImageView *imageView=[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"UINavigationBarBackIndicatorDefault"]];
        [imageView setTintColor:[UIColor redColor]];
        UILabel *label=[[UILabel alloc] init];
        [label setTextColor:[UIColor redColor]];
        [label setText:@"Blog"];
        [label sizeToFit];

        int space=6;
        label.frame=CGRectMake(imageView.frame.origin.x+imageView.frame.size.width+space, label.frame.origin.y, label.frame.size.width, label.frame.size.height);
        UIView *view=[[UIView alloc] initWithFrame:CGRectMake(0, 0, label.frame.size.width+imageView.frame.size.width+space, imageView.frame.size.height)];

        view.bounds=CGRectMake(view.bounds.origin.x+8, view.bounds.origin.y-1, view.bounds.size.width, view.bounds.size.height);
        [view addSubview:imageView];
        [view addSubview:label];

        UIButton *button=[[UIButton alloc] initWithFrame:view.frame];
        [button addTarget:self action:@selector(handleBack:) forControlEvents:UIControlEventTouchUpInside];
        [view addSubview:button];

        [UIView animateWithDuration:0.33 delay:0 options:UIViewAnimationOptionCurveLinear animations:^{
            label.alpha = 0.0;
            CGRect orig=label.frame;
            label.frame=CGRectMake(label.frame.origin.x+25, label.frame.origin.y, label.frame.size.width, label.frame.size.height);
            label.alpha = 1.0;
            label.frame=orig;
        } completion:nil];

        UIBarButtonItem *backButton =[[UIBarButtonItem alloc] initWithCustomView:view];
}

- (void) handleBack:(id)sender{
}

편집:

버튼을 추가하는 대신 제스처 인식기를 사용하는 것이 더 나은 방법이라고 생각합니다.

UITapGestureRecognizer* tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleBack:)];
[view addGestureRecognizer:tap];
[view setUserInteractionEnabled:YES];

이것이 효과가 있을지는 모르겠지만, 당신은 그것을 만들어 볼 수 있습니다.UINavigationController만들기 기본 . 를 호출합니다.removeFromSuperview탐색 컨트롤러를 제거한 다음 단추를 도구 모음의 하위 보기로 추가합니다.또한 필요할 수도 있습니다.retain그리고 전화하기 전의 버튼.removeFromSuperview(그리고 나서)release도구 모음의 하위 보기로 추가한 후) 프로세스 중에 할당이 해제되지 않도록 합니다.

화살표가 있는 UIButton을 iOS 7 시스템의 뒤로 화살표에 상당히 가깝게 만드는 방법(나는 디자이너가 아니다;):

표준:

표준 시스템 뒤로 화살표

애플 SD 고딕 네오

애플 SD 고딕 네오 <캐릭터

Xcode에서:

  • 단추(또는 텍스트 내용이 있는 다른 보기/제어)의 제목 값 필드에 초점을 맞춥니다.
  • 편집 열기 -> 특수 문자
  • 괄호 그룹을 선택하고 '<' 문자를 두 번 클릭합니다.
  • 글꼴 변경: Apple SD Gothic Neo, 원하는 크기의 일반(예: 20)
  • 원하는 색상으로 변경

iOS 7의 등과 같은 화살표에 대한 @staticVoidMan의 답변 참조

뒤로 화살표

이미지 파일을 사용하지 않으려면 다음 코드를 사용하여 화살표 모양을 UIView 하위 클래스에서 그릴 수 있습니다.

- (void)drawRect:(CGRect)rect {
    float width = rect.size.width;
    float height = rect.size.height;
    CGContextRef context = UIGraphicsGetCurrentContext();

    CGContextBeginPath(context);
    CGContextMoveToPoint(context, width * 5.0/6.0, height * 0.0/10.0);
    CGContextAddLineToPoint(context, width * 0.0/6.0, height * 5.0/10.0);
    CGContextAddLineToPoint(context, width * 5.0/6.0, height * 10.0/10.0);
    CGContextAddLineToPoint(context, width * 6.0/6.0, height * 9.0/10.0);
    CGContextAddLineToPoint(context, width * 2.0/6.0, height * 5.0/10.0);
    CGContextAddLineToPoint(context, width * 6.0/6.0, height * 1.0/10.0);
    CGContextClosePath(context);

    CGContextSetFillColorWithColor(context, [UIColor blackColor].CGColor);
    CGContextFillPath(context);
}

여기서 화살표 뷰는 폭 6.0 및 높이 10.0에 비례합니다.

    self.navigationItem.leftBarButtonItem = self.navigationItem.backBarButtonItem;

나한테 효과가 있어요.탭이 많아지면 탭 바에 들어갈 수 있을 때 사용했는데, "More"에서 푸시된 뷰 컨트롤러가 뷰 DidLoad의 왼쪽 BarButtonItem을 재정의했습니다.

소스 이미지는 UIKit ${SDKROOT}/시스템/라이브러리/프레임워크/UIKit.framework/기타.artwork의 Other.artwork에서 추출하여 찾을 수 있습니다.모딩 커뮤니티에는 이를 추출할 수 있는 몇 가지 도구가 있습니다.이미지를 추출하면 필요에 따라 코드를 작성하여 기억하고 버튼 이미지로 설정할 수 있습니다.당신이 실제로 그러한 것을 배송할 수 있는지 여부(파생 예술품을 포함하고 있기 때문에)는 약간 불확실할 수 있으므로, 변호사와 이야기하고 싶을 수 있습니다.

Three20 라이브러리에는 다음과 같은 방법이 있습니다.

  UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle: @"Title" style:UIBarButtonItemStylePlain 
                                                                target:self action:@selector(foo)];

  UIColor* darkBlue = RGBCOLOR(109, 132, 162);

  TTShapeStyle* style = [TTShapeStyle styleWithShape:[TTRoundedLeftArrowShape shapeWithRadius:4.5] next:
    [TTShadowStyle styleWithColor:RGBCOLOR(255,255,255) blur:1 offset:CGSizeMake(0, 1) next:
    [TTReflectiveFillStyle styleWithColor:darkBlue next:
    [TTBevelBorderStyle styleWithHighlight:[darkBlue shadow]
                                     shadow:[darkBlue multiplyHue:1 saturation:0.5 value:0.5]
                                      width:1 lightSource:270 next:
    [TTInsetStyle styleWithInset:UIEdgeInsetsMake(0, -1, 0, -1) next:
    [TTBevelBorderStyle styleWithHighlight:nil shadow:RGBACOLOR(0,0,0,0.15)
                                        width:1 lightSource:270 next:nil]]]]]];

  TTView* view = [[[TTView alloc] initWithFrame:CGRectMake(0, 0, 80, 35)] autorelease];
  view.backgroundColor = [UIColor clearColor];
  view.style = style;
  backButton.customView = view;


  self.navigationItem.leftBarButtonItem = backButton;

다음과 같은 간단한 코드를 사용하면 (사용자 지정 이미지 번들 필요) 효과가 있다는 것을 알게 되었습니다.

// Creates a back button instead of default behaviour (displaying title of previous screen)
    UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"back_arrow.png"]
                                                                   style:UIBarButtonItemStyleBordered
                                                                  target:self
                                                                  action:@selector(backAction)];

    tipsDetailViewController.navigationItem.leftBarButtonItem = backButton;
    [backButton release];

제가 이 모든 해결책들과 다른 것들을 찾아본 후에 하게 된 것은 다음과 같습니다.UIKit 재고 이미지에서 추출한 확장 가능한 png를 사용합니다.이런 식으로 텍스트를 거짓말로 설정할 수 있습니다.

// Generate the background images
UIImage *stretchableBackButton = [[UIImage imageNamed:@"UINavigationBarDefaultBack.png"] stretchableImageWithLeftCapWidth:14 topCapHeight:0];
UIImage *stretchableBackButtonPressed = [[UIImage imageNamed:@"UINavigationBarDefaultBackPressed.png"] stretchableImageWithLeftCapWidth:13 topCapHeight:0];
// Setup the UIButton
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];
[backButton setBackgroundImage:stretchableBackButton forState:UIControlStateNormal];
[backButton setBackgroundImage:stretchableBackButtonPressed forState:UIControlStateSelected];
NSString *buttonTitle = NSLocalizedString(@"Back", @"Back");
[backButton setTitle:buttonTitle forState:UIControlStateNormal];
[backButton setTitle:buttonTitle forState:UIControlStateSelected];
backButton.titleEdgeInsets = UIEdgeInsetsMake(0, 5, 2, 1); // Tweak the text position
NSInteger width = ([backButton.titleLabel.text sizeWithFont:backButton.titleLabel.font].width + backButton.titleEdgeInsets.right +backButton.titleEdgeInsets.left);
[backButton setFrame:CGRectMake(0, 0, width, 29)];
backButton.titleLabel.font = [UIFont boldSystemFontOfSize:13.0f];
[backButton addTarget:self action:@selector(yourSelector:) forControlEvents:UIControlEventTouchDown];
// Now add the button as a custom UIBarButtonItem
UIBarButtonItem *backButtonItem = [[[UIBarButtonItem alloc] initWithCustomView:backButton] autorelease];
self.navigationItem.leftBarButtonItem = backButtonItem;

Xcode 5.xInterface Builder로 쉽게 수행할 수 있습니다.

결과

  • 개체 라이브러리의 도구 모음 및 막대 단추 항목 사용

    구성 요소들

  • 단추의 속성 검사기에서 뒤로 단추 이미지로 이미지 편집

    속성 검사기

알았어!

저도 같은 작업을 하려고 했지만 뒤로 단추가 탐색 모음에 있기를 원했습니다. (사실 뒤로 단추가 필요했는데, 뒤로 단추를 채우는 것보다 더 많은 작업을 수행할 수 있기 때문에 왼쪽 BarButtonItem 속성을 사용해야 했습니다.)Andrew S가 제안한 것을 시도해 보았습니다. 하지만 내비게이션 바에서는 UIButton이 UIBarButtonItem에 캐스팅되었기 때문에 그렇게 보이지 않았습니다.

하지만 저는 이 문제를 해결할 방법을 찾았습니다.저는 실제로 UIButton 아래에 UIView를 넣고 UIBarButtonItem에 대한 customView를 설정했습니다.필요한 경우 코드는 다음과 같습니다.

// initialize button and button view
UIButton *backButton = [UIButton buttonWithType:101];
UIView *backButtonView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, backButton.frame.size.width, backButton.frame.size.height)];

[backButton addTarget:self action:@selector(backButtonTouched:) forControlEvents:UIControlEventTouchUpInside];
[backButton setTitle:@"Back" forState:UIControlStateNormal];
[backButtonView addSubview:backButton];

// set buttonview as custom view for bar button item
UIBarButtonItem *backButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButtonView];
self.navigationItem.leftBarButtonItem = backButtonItem;

// push item to navigationbar items
[self.navigationController.navigationBar setItems:[NSArray arrayWithObject:backButtonItem]];

Swift 5.2 Xcode 11.4

이제 Apple Symbol.chevron.left를 사용하면 보다 우아한 솔루션으로 사용자 지정 버튼을 만들 수 있습니다.크기와 간격을 최대한 가깝게 맞춰보았습니다.

여기에 이미지 설명 입력

import UIKit

class CustomBackButton: UIBarButtonItem {

    convenience init(target: Any, selector: Selector) {

        // Create UIButton
        let button = UIButton(frame: .zero)

        // Customise Title
        button.setTitle("Back", for: .normal)
        button.setTitleColor(.systemBlue, for: .normal)
        button.titleLabel?.font = UIFont.systemFont(ofSize: 17)

        // Customise Image
        let config = UIImage.SymbolConfiguration(pointSize: 19.0, weight: .semibold, scale: .large)
        let image = UIImage(systemName: "chevron.left", withConfiguration: config)
        button.setImage(image, for: .normal)

        // Add Target
        button.addTarget(target, action: selector, for: .touchUpInside)

        // Customise Spacing to match system Back button
        button.imageEdgeInsets = UIEdgeInsets(top: 0.0, left: -18.0, bottom: 0.0, right: 0.0)
        button.titleEdgeInsets = UIEdgeInsets(top: 0.0, left: -12.0, bottom: 0.0, right: 0.0)

        self.init(customView: button)
    }
}

은 이다음중구수현있습다니할로나하는으로 될 수 있습니다.UIToolbarItem 는또.UINavigationItem

override func viewDidLoad() {
    super.viewDidLoad()

    // UIToolbar Item
    let barBackButton = CustomBackButton(target: self, selector: #selector(backButtonTapped))
    let flexSpace = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, action: nil)
    navigationController?.setToolbarHidden(false, animated: false)
    toolbarItems = [barBackButton, flexSpace]

    // Navigation Item
    let navBackButton = CustomBackButton(target: self, selector: #selector(backButtonTapped))
    navigationItem.leftBarButtonItem = navBackButton
}

@objc func backButtonTapped() {
    print("Back tapped")
}

버튼을 뒤집고 화살표가 오른쪽을 가리키도록 하려면 다음을 수행합니다.

여기에 이미지 설명 입력

"chevron.right"라는 이름의 Apple 기호

에음를추니에 다음 합니다.CustomBackButton 명령어:

    // Put the image of the right side of the button
    button.transform = CGAffineTransform(scaleX: -1.0, y: 1.0)
    button.titleLabel?.transform = CGAffineTransform(scaleX: -1.0, y: 1.0)
    button.imageView?.transform = CGAffineTransform(scaleX: -1.0, y: 1.0)

UI 도구 모음에 대한 이미지를 만들려면 포토샵에서 png을 만들고 색상이 있는 곳이면 흰색으로 표시하고 알파 = 0이면 그대로 둡니다.

SDK는 실제로 당신이 만든 아이콘 주위에 테두리를 두르고 당신이 아무것도 하지 않아도 흰색으로 변하게 합니다.

보세요, 이것이 제가 포토샵에서 만든 것입니다. (분명히 뒤로 버튼과 바꾸겠습니다.)

http://twitpic.com/1oanv

그리고 이것이 인터페이스 빌더에서 나타난 것입니다.

http://twitpic.com/1oaoa

png를 사용하지 않는 솔루션.다음 SO 답변을 기반으로 합니다.iPhone TableView Cell에서 셀 오른쪽에 작은 화살표 추가

UITableViewCell을 수평으로 뒤집기만 하면 됩니다!

UIButton *btnBack = [[UIButton alloc] initWithFrame:CGRectMake(0, 5, 70, 20)];

// Add the disclosure
CGRect frm;
UITableViewCell *disclosure = [[UITableViewCell alloc] init];
disclosure.transform = CGAffineTransformScale(CGAffineTransformIdentity, -1, 1);
frm = self.btnBack.bounds;
disclosure.frame = CGRectMake(frm.origin.x, frm.origin.y, frm.size.width-25, frm.size.height);
disclosure.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
disclosure.userInteractionEnabled = NO;
[self.btnBack addSubview:disclosure];

// Add the label
UILabel *lbl = [[UILabel alloc] init];
frm = CGRectOffset(self.btnBack.bounds, 15, 0);
lbl.frame = frm;
lbl.textAlignment = NSTextAlignmentCenter;
lbl.text = @"BACK";
[self addSubview:lbl];

직접 그리는 것을 피하려면 문서화되지 않은 클래스인 UINavigationButton을 스타일 1과 함께 사용할 수 있습니다.이것은 물론 당신의 지원서가 승인되는 것을 막을 수 있습니다./존

사이즈별로 버튼이 다를 필요는 없습니다.[UIImage stretchableImageWithLeftCapWidth:topCapHeight:]하지만 제가 찾은 건 맞춤형 이미지뿐이에요

저도 비슷한 문제가 있었는데, 도서관 P버튼 하나가 나왔습니다.그리고 샘플은 뒤로 이동 버튼과 같은 버튼으로, 맞춤형 버튼처럼 어디서나 사용할 수 있습니다.

것: 이와같것은::여기에 이미지 설명 입력

스위프트 3의 예는 오른쪽 상단에 이전 버튼과 다음 버튼이 있습니다.

let prevButtonItem = UIBarButtonItem(title: "\u{25C0}", style: .plain, target: self, action: #selector(prevButtonTapped))
let nextButtonItem = UIBarButtonItem(title: "\u{25B6}", style: .plain, target: self, action: #selector(nextButtonTapped))
self.navigationItem.rightBarButtonItems = [nextButtonItem, prevButtonItem]

스위프트

// create button
    var backButton = UIButton(type: 101)

    // left-pointing shape!
    backButton.addTarget(self, action: #selector(self.backAction), for: .touchUpInside)
    backButton.setTitle("Back", for: .normal)

    // create button item -- possible because UIButton subclasses UIView!
    var backItem = UIBarButtonItem(customView: backButton)

    // add to toolbar, or to a navbar (you should only have one of these!)
    toolbar.items = [backItem]
    navItem.leftBarButtonItem = backItem

이거 먹어봐요.이러한 이미지를 만드는 데 뒤로 버튼 이미지가 필요하지 않을 것입니다.

UIBarButtonItem *backButton = [[UIBarButtonItem alloc] initWithTitle:@"Back"
                                                               style:UIBarButtonItemStyleBordered
                                                              target:self
                                                              action:@selector(yourSelectorGoesHere:)];
self.navigationItem.backBarButtonItem = backButton;

그것만 하시면 됩니다 :)

넌 이걸 왜 하는 거니?탐색 모음처럼 생긴 것을 원하는 경우 UI 탐색 모음을 사용합니다.

도구 모음에는 관련된 특정 시각적 스타일이 있습니다.아이폰에 대한 휴먼 인터페이스 지침은 다음과 같습니다.

도구 모음은 화면의 아래쪽 가장자리에 나타나며 현재 보기의 개체와 관련된 작업을 수행하는 버튼이 포함되어 있습니다.

그런 다음 텍스트가 없는 대략 사각형 아이콘의 몇 가지 시각적 예를 제공합니다.저는 당신이 이것에 대해 HIG를 따를 것을 촉구하고 싶습니다.

언급URL : https://stackoverflow.com/questions/227078/creating-a-left-arrow-button-like-uinavigationbars-back-style-on-a-uitoolba

반응형