| GitHub Issue | n/a |
| Type | Bug |
| Priority | High |
| Status | Closed |
| Resolution | Fixed |
| Resolution Date | 2019-02-27T00:08:48.000+0000 |
| Affected Version/s | n/a |
| Fix Version/s | Release 8.0.0, Release 7.5.1 |
| Components | iPad |
| Labels | listView, popover, search |
| Reporter | Riduanul Islam |
| Assignee | Vijay Singh |
| Created | 2018-11-05T19:37:16.000+0000 |
| Updated | 2019-02-27T00:08:51.000+0000 |
Issue :-1
* Issue description - The popover UI has shrunk and also lines are not visible in between few rows
* Screen shot showing the issue – PFA Issue_1.png and Issue_1_screenshot.png
* Sample app code – PFA Sample_APP.zip
Issue :-2
* Issue description - On searching an item in search bar and selecting a row the, popover stays with blank white background instead of disappearing
* Screen shot showing the issue – PFA Issue_2.png
* Sample app code – PFA Sample_APP.zip
[~rislam] Issue1 - I think you are not seeing the iPad screen in full size. Test it on device. Issue2 - This is issue. Simple test case -
var win = Ti.UI.createWindow({backgroundColor: 'white'}); var button = Ti.UI.createButton({title: 'Open Popover!', top : 100}); button.addEventListener('click', function(e){ popover.show({ view: button }); }) win.add(button); var contentWindow = Ti.UI.createWindow({ width : Ti.UI.SIZE, height : Ti.UI.SIZE, borderColor : '#CCC' }); var rows = []; for (var i = 0; i < 4; i++) { var title = i ? 'Row '+ i : 'Close Window' rows.push({ properties: { title:title , backgroundColor: 'red', searchableText:title}}); } var sb = Ti.UI.createSearchBar(); var ls = Ti.UI.createListSection({ items: rows }); var lv = Ti.UI.createListView({ sections: [ls], searchView: sb, }); lv.addEventListener('itemclick', function(e) { Ti.API.info('click at index: ' + e.itemIndex); popover.hide(); }); contentWindow.add(lv); var popover = Ti.UI.iPad.createPopover({ width: 400, height: 220, backgroundColor: 'green', contentView: contentWindow }); win.open();[~rislam] There are following 2 workaround. Check with customer which suits them- 1. Use Ti.UI.iOS.NavigationWindow instead of Ti.UI.Window for property "contentView" of popover.
2. Use Ti.UI.SearchBar as subview of window rather property of Ti.UI.ListViewvar win = Ti.UI.createWindow({backgroundColor: 'white'}); var button = Ti.UI.createButton({title: 'Open Popover!', top : 100}); button.addEventListener('click', function(e){ popover.show({ view: button }); }) win.add(button); var contentWindow = Ti.UI.createWindow({ width : Ti.UI.SIZE, height : Ti.UI.SIZE, borderColor : '#CCC' }); var rows = []; for (var i = 0; i < 4; i++) { var title = 'Row '+ i; rows.push({ properties: { title:title , backgroundColor: 'red', searchableText:title}}); } var sb = Ti.UI.createSearchBar(); var ls = Ti.UI.createListSection({ items: rows }); var lv = Ti.UI.createListView({ sections: [ls], searchView: sb, }); lv.addEventListener('itemclick', function(e) { Ti.API.info('click at index: ' + e.itemIndex); popover.hide(); }); contentWindow.add(lv); var navWindow = Ti.UI.iOS.createNavigationWindow({window: contentWindow}) var popover = Ti.UI.iPad.createPopover({ width: 400, height: 220, backgroundColor: 'green', contentView: navWindow }); win.open();var win = Ti.UI.createWindow({backgroundColor: 'white'}); var button = Ti.UI.createButton({title: 'Open Popover!', top : 100}); button.addEventListener('click', function(e){ popover.show({ view: button }); }) win.add(button); var contentWindow = Ti.UI.createWindow({ width : Ti.UI.SIZE, height : Ti.UI.SIZE, borderColor : '#CCC' }); var rows = []; for (var i = 0; i < 4; i++) { var title = 'Row '+ i; rows.push({ properties: { title:title , backgroundColor: 'red', searchableText:title}}); } var sb = Ti.UI.createSearchBar({ top:0, height:44, barColor:'green', showCancel: true, }); var ls = Ti.UI.createListSection({ items: rows }); var lv = Ti.UI.createListView({ top: 45, sections: [ls] }); sb.addEventListener('change', function(e){ lv.searchText = e.value; }); lv.addEventListener('itemclick', function(e) { Ti.API.info('click at index: ' + e.itemIndex); popover.hide(); }); contentWindow.add(sb); contentWindow.add(lv); var popover = Ti.UI.iPad.createPopover({ width: 400, height: 220, backgroundColor: 'green', contentView: contentWindow }); win.open();Hello [~vijaysingh], We have some update from the Customer here. The customer replied: #1: We tested the issue on iPad and can replicate it. Please see attachments !Health_Condition.png|thumbnail! !RC.png|thumbnail! . #2: Thanks for the work around. However, we have 70+ screens and all are form fields that heavily use these drop downs. Making a workaround in all the fields isn't a feasible option for us. Can we have a fix for the issue along with an updated SDK? Thanks
[~vijaysingh], Can you check out the customer last update? The first issue still persists with the real device and he needs a fixed SDK for the second issue. Thanks!
[~morahman] 1. If first issue mean that row height of table view is less, then use 'height' property of row in rowTemplate. e.g. -
2. On second issue we are still working on.var rowTemplate = { properties: { backgroundColor : '#dbdbdb', height: 44 // Row height }, childTemplates: [ { // Title type: 'Ti.UI.Label', // Use a label for the title bindId: 'title', // Maps to a custom info property of the item data properties: { // Sets the label properties width: Ti.UI.FILL, heigth: Ti.UI.FILL, left: 16 } } ] };PR - https://github.com/appcelerator/titanium_mobile/pull/10481
Hello, Feed back from the customer:
Asking the customer to share a screenshot which displays the issue. Will be back here soon. Thanks[~vijaysingh], Attached the image provided by the customer. Can you please review? The Navigation window is not accepting the height property Ti.UI.SIZE and Ti.UI.FILL.
Closing ticket, fix verified in SDK version: 8.0.0.v20181212023313 Test and other information can be found at: https://github.com/appcelerator/titanium_mobile/pull/10481 If customer is till facing issues please feel free to reopen the ticket.
7_5_X: https://github.com/appcelerator/titanium_mobile/pull/10721