【发布时间】:2016-03-07 12:54:56
【问题描述】:
我有一个集合重复列表,列表顶部有一个搜索栏(即在离子弹出主体内)。在真实设备(Android 4.4)上,列表仅显示 9 条记录。
我创建了一个代码笔 collection repeat inside ionic pop up. 在这里它显示所有记录,但不在实际设备上。
最近我从 Ionic 1.1.1 更新到 Ionic 1.2.4 。是不是因为新的 Ionic 版本有问题,我也尝试了 Ionic 1.2.4 的每晚构建它也可以工作。
手机浏览器版本是否有差异,我手机浏览器版本是“Mozilla/5.0(Linux 4.4.2; en-us; 6043D Build/KOT49H) AppleWebKit/537.36 (KHTML, like Gecko) 版本/ 4.0 chrome/30.0.0 移动版 Safari/537.36."
这是 ionic 弹出窗口的 HTML 代码。
<div class="list list-inset" ng-style="{ 'display': 'inline-flex', 'padding': '0'}">
<label class='item item-input' ng-style='{ 'border-right-color': '#FFFFFF'}'>
<i class='icon icon-left ion-ios7-search placeholder-icon''></i>
<input type='text' ng-model='search' placeholder='Search'>
</label>
<a class='button button-icon icon ion-ios7-close-empty placeholder-icon'
ng-style='{ 'color': '#B83E2C' }'
on-touch='clearSearch()''>
</a>
</div>
<div class='listPopUpHeight'>
<ion-scroll direction="y" class="available-scroller" style="height:350px">
<ion-list>
<ion-item
class="dataSourceItem"
collection-repeat="item in dataSource | filter:search"
collection-item-width="100%"
item-height="15%"
on-tap="tapped(item)">
{{item.Text}}
</ion-item>
</ion-list>
</ion-scroll>
</div>
这里是JS代码:
angular.module('ionicApp', ['ionic'])
.controller('PopupCtrl', function($scope, $ionicPopup, $timeout) {
$scope.dataSource = [];
$scope.showList = function(){
var list=[];
for (var i = 0; i < 1000; i++) {
list.push({ 'Id': i, 'Text': 'Text_' + i });
}
$scope.dataSource = list;
var listPopup = $ionicPopup.show({
templateUrl: 'popupTemplate.html',
title: 'List',
scope: $scope,
buttons: [
{ text: 'Cancel' },
]
});
};
});
我有什么遗漏的吗?请回复。
提前谢谢:)
【问题讨论】:
-
嘿,如果您找到了解决方案,只是在徘徊?在弹出窗口中使用 collection-repeat 时我遇到了同样的问题。
-
嘿,我有一个按预期工作的解决方案,但我觉得它不是正确的方法。我所做的是在运行时指定离子滚动的高度,这是基于我指定离子滚动元素高度的设备高度。
标签: angularjs ionic-framework hybrid-mobile-app multi-device-hybrid-apps