{"id":18763693,"url":"https://github.com/inloop/inlbreadcrumbs","last_synced_at":"2025-10-11T00:02:53.016Z","repository":{"id":56915049,"uuid":"47261258","full_name":"inloop/INLBreadcrumbs","owner":"inloop","description":"iOS library for UINavigationController breadcrumb navigation","archived":false,"fork":false,"pushed_at":"2016-12-28T19:07:22.000Z","size":6036,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-09-13T21:31:12.515Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Objective-C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc0-1.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/inloop.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-12-02T13:02:40.000Z","updated_at":"2020-08-03T07:37:31.000Z","dependencies_parsed_at":"2022-08-21T02:50:57.715Z","dependency_job_id":null,"html_url":"https://github.com/inloop/INLBreadcrumbs","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/inloop/INLBreadcrumbs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inloop%2FINLBreadcrumbs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inloop%2FINLBreadcrumbs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inloop%2FINLBreadcrumbs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inloop%2FINLBreadcrumbs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/inloop","download_url":"https://codeload.github.com/inloop/INLBreadcrumbs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/inloop%2FINLBreadcrumbs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279005574,"owners_count":26083921,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T18:27:06.704Z","updated_at":"2025-10-11T00:02:52.969Z","avatar_url":"https://github.com/inloop.png","language":"Objective-C","readme":"# INLBreadcrumbs\n\n## 1. Overview\nThe `INLBreadcrumbs` library adds breadcrumbs to a `UINavigationController`. You can pop to an arbitrary view controller from the title view.\n\n\u003cimg src=\"https://raw.githubusercontent.com/inloop/INLBreadcrumbs/master/Demo/Screenshots/breadcrumbs-iPhone.gif\" alt=\"RVBreadcrumbs iPhone screenshot\" height=\"400\" \u003e            \u003cimg src=\"https://raw.githubusercontent.com/inloop/INLBreadcrumbs/master/Demo/Screenshots/breadcrumbs-iPad.gif\" alt=\"RVBreadcrumbs iPad screenshot\" height=\"400\" \u003e\n\n## 2. How to use\nThere are two ways breadcrumbs can be added to your application:\n\n#### 1: Subclassing INLBreadcrumbViewController\nThis is the simpler approach. All you need to do is subclass the `INLBreadcrumbViewController`. No further configuration needed.\n```objective-c\n#import \"INLBreadcrumbs.h\"\n\n@interface MyViewController : INLBreadcrumbViewController\n```\nCongratulations. You have just added breadcrumbs to your application\n\n#### 2: Implementing the INLBreadcrumbCompatibleController protocol\nThis approach requires you to write slightly more code but it’s more flexible since you don’t need to subclass anything.\n\nFirst, implement the `INLBreadcrumbCompatibleController` protocol and create a breadcrumb property of type `INLBreadcrumb*`\n```objective-c\n#import \"INLBreadcrumb.h\"\n\n@interface INLBreadcrumbViewController : UIViewController \u003cINLBreadcrumbCompatibleController\u003e\n@property (strong, nonatomic) INLBreadcrumb * breadcrumb;\n```\nIn the `+load` method call the `setupBreadcrumbs` and in the `-viewDidLoad` initialise the breadcrumb property\n```objective-c\n#import \"INLBreadcrumb.h\"\n\n@implementation INLBreadcrumbViewController\n\n+(void)load {\n\t[super load];\n\t[self setupBreadcrumbs];\n}\n\n-(void)viewDidLoad {\n\t[super viewDidLoad];\n\tself.breadcrumb = [INLBreadcrumb breadcrumbWithController:self];\n}\n```\n\n## 3. Multiple breadcrumb stacks\nYou can have multiple breadcrumb stacks e.g. if you have several `UITabViewController` tabs or a modal transition - each should have a separate breadcrumb stack. You associate a breadcrumb with a breadcrumb stack by setting the manager property before `didMoveToParentViewController:` is called.\n```objective-c\n-(void)viewDidLoad {\n\t[super viewDidLoad];\n\t\n\t// If subclassing INLBreadcrumbViewController\n\tself.breadcrumb.manager = [INLBreadcrumbManager managerForKey:@\"stackId\"]\n\t\n\t// If conforming to INLBreadcrumbCompatibleController\n\tself.breadcrumb = [INLBreadcrumb breadcrumbWithController:self\n\t                                                  manager:[INLBreadcrumbManager managerForKey:@\"stackId\"]];\n}\n```\nIf you don’t specify a manager the default manager is used.\n\n## 4. Customising the UI\nYou can change the breadcrumb indicator in the navigation bar title view (default is \" ▾\") and the cancel button title for the iPhone action sheet popup (default is “Cancel”) by setting the corresponding properties.\n```objective-c\nself.breadcrumb.cancelButtonTitle = NSLocalizedString(@\"breadcrumbs.cancel”, nil);\nself.breadcrumb.breadcrumbIndicator = @\" 🍞\";\n```\nThis will only set the values for a specific breadcrumb. If you want to set it for an entire breadcrumb stack you can change the manager settings.\n```objective-c\n[INLBreadcrumbManager defaultManager].cancelButtonTitle = NSLocalizedString(@\"breadcrumbs.cancel\", nil);\n[INLBreadcrumbManager defaultManager].breadcrumbIndicator = @\" 🍞\";\n```\nChanging the manager settings will not affect breadcrumbs that were already created. You should therefore set this before initialising the first view controller that uses breadcrumbs.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finloop%2Finlbreadcrumbs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finloop%2Finlbreadcrumbs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finloop%2Finlbreadcrumbs/lists"}