{ "id": "107666", "key": "TIMOB-12477", "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": [ { "id": "14162", "description": "Release 3.1.0", "name": "Release 3.1.0", "archived": true, "released": true, "releaseDate": "2013-04-16" }, { "id": "15272", "description": "2013 Sprint 04 API", "name": "2013 Sprint 04 API", "archived": true, "released": true, "releaseDate": "2013-02-25" }, { "id": "14814", "description": "2013 Sprint 04", "name": "2013 Sprint 04", "archived": true, "released": true, "releaseDate": "2013-02-25" } ], "resolution": { "id": "1", "description": "A fix for this issue is checked into the tree and tested.", "name": "Fixed" }, "resolutiondate": "2013-02-22T21:51:35.000+0000", "created": "2013-01-10T05:59:33.000+0000", "priority": { "name": "High", "id": "2" }, "labels": [ "android", "api", "holo", "insight" ], "versions": [], "issuelinks": [], "assignee": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "updated": "2013-07-12T08:54:18.000+0000", "status": { "description": "The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.", "name": "Closed", "id": "6", "statusCategory": { "id": 3, "key": "done", "colorName": "green", "name": "Done" } }, "components": [ { "id": "10202", "name": "Android", "description": "Android Platform" } ], "description": "When using the Holo Theme in your Android application (Android version > 3.0), the tabs icons are not displayed anymore.\r\n\r\nTo reproduce, just download the KitchenSink sample and add the following lines in the tiapp.xml\r\n\r\n- before the part:\r\n{code:title=tiapp.xml|borderStyle=solid}{code}\r\n\r\n- in your declaration:\r\n{code:title=tiapp.xml|borderStyle=solid}android:theme=\"@android:style/Theme.Holo\"{code}\r\n\r\nYou'll see that the tabs don't have icons anymore.\r\n", "attachment": [ { "id": "34665", "filename": "tabs-holo.png", "author": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "created": "2013-01-10T05:59:33.000+0000", "size": 55792, "mimeType": "image/png" } ], "flagged": false, "summary": "Android: Tab Icons not displayed with Theme.Holo", "creator": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "subtasks": [], "reporter": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "environment": "Titanium 3.0.0.GA, 3.1 CI builds\r\nAndroid 3.0+", "comment": { "comments": [ { "id": "236314", "author": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Can you provide either a titanium projec sample or tiapp.xml file?\n\nIt will allow to replicate what you're seeing quicker, thanks.\n\nHope hearing from you soon, Thomas.", "updateAuthor": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-01-28T22:03:09.000+0000", "updated": "2013-01-28T22:03:09.000+0000" }, { "id": "236408", "author": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "body": "Well, like I said, you just need the KitchenSink using the Android Holo theme to replicate.\n\nHowever, here's a sample app I've just built using the \"Tabbed Application\" sample from Titanium Studio.\n\ntiapp.xml\n\n{code:xml|title=tiapp.xml|borderStyle=solid}\n\n\n com.tab.test\n TabTest\n 1.0\n shopmium\n http://\n not specified\n 2013 by shopmium\n appicon.png\n false\n false\n default\n false\n false\n false\n true\n e962583e-41b2-4280-b05a-dfa612e015f2\n system\n \n \n Ti.UI.PORTRAIT\n \n \n Ti.UI.PORTRAIT\n Ti.UI.UPSIDE_PORTRAIT\n Ti.UI.LANDSCAPE_LEFT\n Ti.UI.LANDSCAPE_RIGHT\n \n \n\t\n\t17\n\t\n\t\t\n\t\n\t\t\n\t\n\t\t\n\t\n\t\t\t\n\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\t\t\n\t\n\t\t\t\n\t\n\t\t\n\t\n \n \n false\n true\n false\n false\n false\n \n 3.0.0.GA\n\n{code}\n\napp.js\n\n{code:javascript|title=app.js}\n/*\n * A tabbed application, consisting of multiple stacks of windows associated with tabs in a tab group.\n * A starting point for tab-based application with multiple top-level windows.\n * Requires Titanium Mobile SDK 1.8.0+.\n *\n * In app.js, we generally take care of a few things:\n * - Bootstrap the application with any data we need\n * - Check for dependencies like device type, platform version or network connection\n * - Require and open our top-level UI component\n *\n */\n\n//bootstrap and check dependencies\nif (Ti.version < 1.8 ) {\n\talert('Sorry - this application template requires Titanium Mobile SDK 1.8 or later');\n}\n\n// This is a single context application with mutliple windows in a stack\n(function() {\n\t//determine platform and form factor and render approproate components\n\tvar osname = Ti.Platform.osname,\n\t\tversion = Ti.Platform.version,\n\t\theight = Ti.Platform.displayCaps.platformHeight,\n\t\twidth = Ti.Platform.displayCaps.platformWidth;\n\n\tvar Window = require('ui/handheld/ApplicationWindow');\n\n\tvar ApplicationTabGroup = require('ui/common/ApplicationTabGroup');\n\tnew ApplicationTabGroup(Window).open();\n})();\n{code}\n\nApplicationTabGroup.js\n\n{code:javascript|title=ApplicationTabGroup.js}\nfunction ApplicationTabGroup(Window) {\n\t//create module instance\n\tvar self = Ti.UI.createTabGroup();\n\t\n\t//create app tabs\n\tvar win1 = new Window(L('home')),\n\t\twin2 = new Window(L('settings'));\n\t\n\tvar tab1 = Ti.UI.createTab({\n\t\ttitle: L('home'),\n\t\ticon: '/images/KS_nav_ui.png',\n\t\twindow: win1\n\t});\n\twin1.containingTab = tab1;\n\t\n\tvar tab2 = Ti.UI.createTab({\n\t\ttitle: L('settings'),\n\t\ticon: '/images/KS_nav_views.png',\n\t\twindow: win2\n\t});\n\twin2.containingTab = tab2;\n\t\n\tself.addTab(tab1);\n\tself.addTab(tab2);\n\t\n\treturn self;\n};\n\nmodule.exports = ApplicationTabGroup;\n{code}\n\nApplicationWindow.js\n\n{code:javascript|title=ApplicationWindow.js}\nfunction ApplicationWindow(title) {\n\tvar self = Ti.UI.createWindow({\n\t\ttitle:title,\n\t\tbackgroundColor:'white'\n\t});\n\n\treturn self;\n};\n\nmodule.exports = ApplicationWindow;\n{code}\n\nPlease note that the only things that have been modified from the sample is the tiapp.xml, with the Android API version and the Holo theme. If you just remove the and use @style:Theme.Titanium instead of Holo, you have the tab icons.\n\nThanks for your help, we're glad that you're trying to address the issue.\n\nRegards,", "updateAuthor": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "created": "2013-01-29T09:54:35.000+0000", "updated": "2013-01-29T09:54:35.000+0000" }, { "id": "236441", "author": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Moved to main project to dig into it. Above test reproduces the issue. Tested multiple times, attaching yet another tiapp.xml.\n\nh6.Tested on\nAndroid Emulator - Google APIs Android 4.0 & 4.0.3\n\nh6.tiapp.xml\n{code}\n \n 14\n \n \t\t\n \n \n \n \n \n \n \n{code}", "updateAuthor": { "name": "egomez", "key": "egomez", "displayName": "Eduardo Gomez", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-01-29T17:32:29.000+0000", "updated": "2013-01-29T17:32:29.000+0000" }, { "id": "237893", "author": { "name": "vivekr", "key": "vivekr", "displayName": "Vivekr", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Looks like an android bug. We can reproduce the same issue in a stand alone android application with holo theme.", "updateAuthor": { "name": "vivekr", "key": "vivekr", "displayName": "Vivekr", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-02-09T10:04:15.000+0000", "updated": "2013-02-09T10:04:15.000+0000" }, { "id": "237894", "author": { "name": "vivekr", "key": "vivekr", "displayName": "Vivekr", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Looks like an android bug. We can reproduce the same issue in a stand alone android application using holo theme.", "updateAuthor": { "name": "vivekr", "key": "vivekr", "displayName": "Vivekr", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-02-09T10:06:37.000+0000", "updated": "2013-02-09T10:06:37.000+0000" }, { "id": "237939", "author": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "body": "Well, there are plenty of native Android apps that use tab along with icons. For instance, the official Contact app. I've been digging into the source code a bit, they set icons here: https://github.com/android/platform_packages_apps_contacts/blob/master/src/com/android/contacts/activities/ActionBarAdapter.java#L262\r\n\r\nThanks again for your feedback.\r\n\r\nRegards,", "updateAuthor": { "name": "tkeunebr", "key": "tkeunebr", "displayName": "Thomas Keunebroek", "active": true, "timeZone": "Europe/Berlin" }, "created": "2013-02-11T09:06:23.000+0000", "updated": "2013-02-11T09:06:23.000+0000" }, { "id": "238532", "author": { "name": "vivekr", "key": "vivekr", "displayName": "Vivekr", "active": true, "timeZone": "America/Los_Angeles" }, "body": "in progress", "updateAuthor": { "name": "vivekr", "key": "vivekr", "displayName": "Vivekr", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-02-14T12:47:57.000+0000", "updated": "2013-02-14T12:47:57.000+0000" }, { "id": "238655", "author": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "body": "Pull pending against master\nhttps://github.com/appcelerator/titanium_mobile/pull/3873\n\nThis adds support for setting the icons on ActionBarTab. Might fix the holo issue as well.", "updateAuthor": { "name": "vduggal", "key": "vduggal", "displayName": "Vishal Duggal", "active": false, "timeZone": "America/Los_Angeles" }, "created": "2013-02-15T01:15:05.000+0000", "updated": "2013-02-15T01:15:05.000+0000" }, { "id": "261613", "author": { "name": "djha", "key": "djha", "displayName": "Dhirendra Jha", "active": true, "timeZone": "America/Los_Angeles" }, "body": "Environment Used - \nSDK - 3.1.2.v20130710144553, 3.1.1.GA\nAppcelerator Studio - 3.1.2.201307101037\nDevice - Nexus 7(v4.1)\nacs - 1.0.3\nalloy - 1.1.3\nnpm - 1.2.14\ntitanium - 3.1.1\ntitanium-code-processor - 1.0.1\n\nReproduced this issue using 3.0.2.GA build but unable to reproduce using 3.1.1.GA and latest 3.1.2.v20130710144553 sdk builds. Tabs icon are displayed using Holo theme. Used Kitchen Sink application for verification. Hence closing this issue.", "updateAuthor": { "name": "djha", "key": "djha", "displayName": "Dhirendra Jha", "active": true, "timeZone": "America/Los_Angeles" }, "created": "2013-07-12T08:53:55.000+0000", "updated": "2013-07-12T08:53:55.000+0000" } ], "maxResults": 10, "total": 10, "startAt": 0 } } }