{ "id": "170389", "key": "TIMOB-25538", "fields": { "issuetype": { "id": "1", "description": "A problem which impairs or prevents the functions of the product.", "name": "Bug", "subtask": false }, "project": { "id": "10153", "key": "TIMOB", "name": "Titanium SDK/CLI", "projectCategory": { "id": "10100", "description": "Titanium and related SDKs used in application development", "name": "Client" } }, "fixVersions": [], "resolution": { "id": "11", "description": "Is not a bug in our product", "name": "Not Our Bug" }, "resolutiondate": "2017-11-20T11:33:03.000+0000", "created": "2017-11-20T11:08:23.000+0000", "priority": { "name": "None", "id": "6" }, "labels": [], "versions": [], "issuelinks": [], "assignee": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "updated": "2017-11-29T23:41:31.000+0000", "status": { "description": "A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.", "name": "Resolved", "id": "5", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [], "description": "*Issue Description:*\r\nWhen I add a custom back button using leftNavButton, the original iOS back button appears briefly before the custom one appears. I'm experiencing this behaviour using latest ti SDK 6.3.0.GA.\r\n\r\n*Steps to reproduce:*\r\n- Add a custom image in project directory and rename it to backbtn.png\r\n- Then run the sample code below\r\n- A red window should appear, click *Open blue window* button\r\nAt this point, observe that the default iOS back button appears briefly before the custom one.\r\n\r\n*Expected:*\r\nThe default iOS back button should not appear.\r\n\r\n*Actual:*\r\nThe default iOS back button appears briefly before the custom back button appears.\r\n\r\n*Test Code:*\r\n*app.js*\r\n{code}\r\nvar back_btn = Ti.UI.createView({\r\n\tbackgroundImage: 'backbtn.png',\r\n\twidth : 50,\r\n\theight : 20,\r\n\tleft : '5'\r\n});\r\n\r\nvar win2 = Titanium.UI.createWindow({\r\n\tbackgroundColor : 'red',\r\n\ttitle : 'Red Window',\r\n\r\n});\r\n\r\nvar win1 = Titanium.UI.iOS.createNavigationWindow({\r\n\twindow : win2\r\n});\r\n\r\nvar win3 = Titanium.UI.createWindow({\r\n\tbackgroundColor : 'blue',\r\n\ttitle : 'Blue Window',\r\n\tleftNavButton : back_btn\r\n});\r\n\r\nvar button = Titanium.UI.createButton({\r\n\ttitle : 'Open Blue Window'\r\n});\r\n\r\nbutton.addEventListener('click', function() {\r\n\twin1.openWindow(win3);\r\n\r\n});\r\n\r\nwin2.add(button);\r\n\r\nback_btn.addEventListener('click', function() {\r\n\twin3.close();\r\n});\r\n\r\nwin1.open();\r\n{code}\r\n\r\n\r\n\r\n", "attachment": [ { "id": "63657", "filename": "leftArrow@2x.png", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-20T11:33:18.000+0000", "size": 1821, "mimeType": "image/png" } ], "flagged": false, "summary": "iOS: Original back button in iOS navigation bar shows briefly after replacing it with a custom one.", "creator": { "name": "jnaher", "key": "jnaher", "displayName": "Jebun Naher", "active": false, "timeZone": "Asia/Dhaka" }, "subtasks": [], "reporter": { "name": "jnaher", "key": "jnaher", "displayName": "Jebun Naher", "active": false, "timeZone": "Asia/Dhaka" }, "environment": "Appcelerator Command-Line Interface, version 6.3.0\r\nCopyright (c) 2014-2017, Appcelerator, Inc. All Rights Reserved.\r\n\r\nOperating System\r\n Name = Mac OS X\r\n Version = 10.13.1\r\n Architecture = 64bit\r\n # CPUs = 4\r\n Memory = 8.0GB\r\n\r\nNode.js\r\n Node.js Version = 4.2.2\r\n npm Version = 2.14.7\r\n\r\nAppcelerator CLI\r\n Installer = 4.2.10\r\n Core Package = 6.3.0\r\n\r\nTitanium CLI\r\n CLI Version = 5.0.14\r\n node-appc Version = 0.2.41\r\n\r\nTitanium SDKs\r\n 6.3.0.GA\r\n Version = 6.3.0\r\n\r\nSimulator: iPhone 7 ( iOS- 11.0)", "closedSprints": [ { "id": 968, "state": "closed", "name": "2017 Sprint 23 SDK", "startDate": "2017-11-05T16:37:25.071Z", "endDate": "2017-11-19T16:37:00.000Z", "completeDate": "2017-11-20T18:57:56.565Z", "originBoardId": 114 } ], "comment": { "comments": [ { "id": "431027", "author": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "body": "You should use a {{Ti.UI.Button}} instance for left/right nav butttons to confirm to the iOS archtecture. I changed your code a bit and it now works perfectly (see the \"leftArrow.png\" attached as well):\r\n{code:js}\r\nvar back_btn = Ti.UI.createButton({\r\n\timage: 'leftArrow.png',\r\n});\r\n \r\nvar win2 = Titanium.UI.createWindow({\r\n\tbackgroundColor : 'red',\r\n\ttitle : 'Red Window',\r\n \r\n});\r\n \r\nvar win1 = Titanium.UI.iOS.createNavigationWindow({\r\n\twindow : win2\r\n});\r\n \r\nvar win3 = Titanium.UI.createWindow({\r\n\tbackgroundColor : 'blue',\r\n\ttitle : 'Blue Window',\r\n\tleftNavButton : back_btn\r\n});\r\n \r\nvar button = Titanium.UI.createButton({\r\n\ttitle : 'Open Blue Window'\r\n});\r\n \r\nbutton.addEventListener('click', function() {\r\n\twin1.openWindow(win3);\r\n \r\n});\r\n \r\nwin2.add(button);\r\n \r\nback_btn.addEventListener('click', function() {\r\n\twin3.close();\r\n});\r\n \r\nwin1.open();\r\n{code}", "updateAuthor": { "name": "hknoechel", "key": "hansknoechel", "displayName": "Hans Knöchel", "active": true, "timeZone": "Europe/Berlin" }, "created": "2017-11-20T11:33:03.000+0000", "updated": "2017-11-20T11:33:03.000+0000" }, { "id": "431500", "author": { "name": "brentonhouse", "key": "brentonhouse", "displayName": "Brenton House", "active": true, "timeZone": "America/Chicago" }, "body": "I am seeing this with Appcelerator 6.3.0 and Titanium SDK 6.2.2 when navigating within an iOS TabGroup, even when I use Ti.UI.Button.", "updateAuthor": { "name": "brentonhouse", "key": "brentonhouse", "displayName": "Brenton House", "active": true, "timeZone": "America/Chicago" }, "created": "2017-11-29T23:41:31.000+0000", "updated": "2017-11-29T23:41:31.000+0000" } ], "maxResults": 3, "total": 3, "startAt": 0 } } }