2017-02-14 67 views
1

你好開發夥伴,在xamarin表單上動畫製作ListView的第一個孩子

我有一個ListView,你有它,ViewCells。 作爲關於如何使用應用程序的第一個教程的一部分,我需要爲第一個視單元的一些元素設置動畫,以便用戶可以理解單擊該元素將執行一些操作。

我試圖與MVVM:

<StackLayout x:Name="{Binding CellName}" Orientation="Horizontal" VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" Margin="20"> 

然後

AccessPage[0].CellName = "TutorialCell"; 

FindByName<ViewCell>("TutorialCell") 

返回null。

我只能訪問被綁定到StackLayout的項目,而不是StackLayout本身,這樣我就可以:

element.ScaleTo(1.05, 200); 

我在想這錯了嗎? 謝謝。

+0

我想我會從ViewCell繼承並創建一個自定義視圖單元格,並將您的動畫代碼放在那裏,您可以在此自定義視圖單元格中創建自己的BindableProperty,以指示它是教程單元格,還是隻監聽PropertyChanged事件。另一種選擇是使用數據模板選擇器。 –

+0

謝謝@Bill,我正在處理這個問題,但我怎樣才能訪問「tutorialCell」來開始動畫?我有一條消息解釋了「閃爍」元素的作用,所以當消息出現時,元素應該「閃爍」 –

回答

0

這會幫你嗎?創建從ListView控件繼承的新類和重寫SetupContent方法:

public class MyListView : ListView 
{ 
    public Cell FirstRow { get; set; } 
    protected override void SetupContent(Cell content, int index) 
    { 
     if (index == 0) FirstRow = content; 
     base.SetupContent(content, index); 
    } 
} 

然後,你可以訪問您的自定義的ListView的FIRSTROW財產。