creating-listview.component.html
<ListView [items]="countries" (itemTap)="onItemTap($event)">
<template let-country="item" let-i="index">
<StackLayout orientation="horizontal">
<Label [text]='(i + 1) +".) "' ></Label>
<Label [text]='country.name'></Label>
</StackLayout>
</template>
</ListView>
creating-listview.component.ts
import { Component, ChangeDetectionStrategy, Input } from "@angular/core";
class Country {
constructor(public name: string) { }
}
var europianCountries = ["Austria", "Belgium", "Bulgaria", "Croatia", "Cyprus", "Czech Republic",
"Denmark", "Estonia", "Finland", "France","Germany", "Greece", "Hungary", "Ireland", "Italy",
"Latvia", "Lithuania", "Luxembourg", "Malta", "Netherlands","Poland", "Portugal", "Romania", "Slovakia",
"Slovenia","Spain", "Sweden", "United Kingdom"];
@Component({
selector: "creating-listview",
styleUrls:["./creating-listview.component.css"],
templateUrl: "./creating-listview.component.html",
changeDetection: ChangeDetectionStrategy.OnPush
})
export class CreatingListViewComponent {
public countries: Array<Country>;
constructor() {
this.countries = [];
for (var i = 0; i < europianCountries.length; i++) {
this.countries.push(new Country(europianCountries[i]));
}
}
public onItemTap(args) {
console.log("Item Tapped at cell index: " + args.index);
}
}