本文整理汇总了C#中RecyclerView.GetChildViewHolder方法的典型用法代码示例。如果您正苦于以下问题:C# RecyclerView.GetChildViewHolder方法的具体用法?C# RecyclerView.GetChildViewHolder怎么用?C# RecyclerView.GetChildViewHolder使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RecyclerView
的用法示例。
在下文中一共展示了RecyclerView.GetChildViewHolder方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnDraw
public override void OnDraw (Canvas c, RecyclerView parent, RecyclerView.State state)
{
var childCount = parent.ChildCount;
if (childCount == 0) {
return;
}
for (int i = 0; i+1 < childCount; i++) {
var child = parent.GetChildAt (i);
var viewHolder = parent.GetChildViewHolder (child);
Type type = viewHolder.GetType ();
object[] attributes = type.GetCustomAttributes (typeof (ShadowAttribute), false);
if (attributes.Length != 1) {
continue;
}
ShadowAttribute shadowAttr = attributes [0] as ShadowAttribute;
if (ShouldDraw (child) && shadowAttr != null) {
var m = shadowAttr.Modes;
var left = parent.PaddingLeft;
var right = child.Right + child.PaddingRight;
if (m.HasFlag (top) && topShadowHeightInPixels > 0 && parent.GetChildAdapterPosition (child) != 0) {
var shadowBottom = child.Top + topShadowHeightInPixels;
shadow.SetBounds (left, child.Top, right, shadowBottom);
shadow.Draw (c);
}
if (m.HasFlag (bottom) && bottomShadowHeightInPixels > 0) {
var reverseShadowTop = child.Bottom - bottomShadowHeightInPixels;
reverseShadow.SetBounds (left, reverseShadowTop, right, child.Bottom);
reverseShadow.Draw (c);
}
}
}
}