[英]Tapped gesture in Xamarin.forms
因此,我必須第一次使用C#進行布局...
現在,我希望能夠在列表視圖項上切換,然后轉到包含已竊聽項的數據的詳細信息頁面。我該怎么做?
我目前有這個代碼;
public MainPage()
{
GeneratePage();
InitializeComponent();
}
private async Task GeneratePage()
{
List<Folder> folders = await ApiManager.GetFoldersAsync();
foreach (var f in folders)
{
List<Lists> lists = new List<Lists>();
foreach (int id in f.list_ids)
{
lists.Add(await ApiManager.GetSpecificListAsync(id));
// Debug.WriteLine("ID for list '"+ f.title +"' : " + id);
}
this.Children.Add(new ContentPage
{
Title = f.title,
Content = new ListView
{
ItemsSource = lists
}
});
}
}
您有ContentPage列表嗎? 真奇怪 但是,通常情況下,要為ListView項目添加點擊事件,您需要訂閱ItemTapped
事件。
var list = new ListView();
list.ItemsSource = myItems;
list.ItemTapped += myEventTapped();
Content = list;`
通常,我使用XAML而不是CodeBehind來創建UI,但是以下代碼片段應該可以解決問題,但我尚未對其進行測試。
只需附加到ItemTapped事件。 或者,您也可以在您的ListView上添加一個TapGestureRecognizer。
private async Task GeneratePage()
{
List<Folder> folders = await ApiManager.GetFoldersAsync();
foreach (var f in folders)
{
List<Lists> lists = new List<Lists>();
foreach (int id in f.list_ids)
{
lists.Add(await ApiManager.GetSpecificListAsync(id));
// Debug.WriteLine("ID for list '"+ f.title +"' : " + id);
}
ListView listView = new ListView { ItemsSource = lists };
listView.ItemTapped += ListViewOnItemTapped;
this.Children.Add(new ContentPage
{
Title = f.title,
Content = listView
});
}
}
void ListViewOnItemTapped(object sender,ItemTappedEventArgs itemTappedEventArgs){拋出新的NotImplementedException(); }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.