public override View GetView(int position, View convertView, ViewGroup parent) { SingleNewsListItem listItem = convertView as SingleNewsListItem; if (listItem == null) { listItem = new SingleNewsListItem(Rock.Mobile.PlatformSpecific.Android.Core.Context); int height = (int)System.Math.Ceiling(NavbarFragment.GetCurrentContainerDisplayWidth( ) * PrivateNewsConfig.NewsMainAspectRatio); listItem.LayoutParameters = new AbsListView.LayoutParams(ViewGroup.LayoutParams.WrapContent, height); listItem.HasImage = false; } else { listItem.FreeImageResources( ); } // if we have a valid item if (position < ParentFragment.News.Count) { // is our image ready? if (ParentFragment.News[position].Image != null) { if (listItem.HasImage == false) { listItem.HasImage = true; Rock.Mobile.PlatformSpecific.Android.UI.Util.FadeView(listItem.Billboard, true, null); } listItem.Billboard.SetImageBitmap(ParentFragment.News[position].Image); } // only show the "Loading..." if the image isn't actually downloaded. else if (ParentFragment.Placeholder != null) { listItem.Billboard.SetImageBitmap(ParentFragment.Placeholder); } else { listItem.Billboard.SetImageBitmap(null); } if (ParentFragment.News[position].News.Developer_Private) { listItem.PrivateOverlay.Visibility = ViewStates.Visible; } else { listItem.PrivateOverlay.Visibility = ViewStates.Gone; } } else { listItem.Billboard.SetImageBitmap(null); listItem.PrivateOverlay.Visibility = ViewStates.Gone; } return(base.AddView(listItem)); }
public override View GetView(int position, View convertView, ViewGroup parent) { SingleNewsListItem listItem = convertView as SingleNewsListItem; if ( listItem == null ) { listItem = new SingleNewsListItem( Rock.Mobile.PlatformSpecific.Android.Core.Context ); int height = (int)System.Math.Ceiling( NavbarFragment.GetCurrentContainerDisplayWidth( ) * PrivateNewsConfig.NewsMainAspectRatio ); listItem.LayoutParameters = new AbsListView.LayoutParams( ViewGroup.LayoutParams.WrapContent, height ); listItem.HasImage = false; } else { listItem.FreeImageResources( ); } // if we have a valid item if ( position < ParentFragment.News.Count ) { // is our image ready? if ( ParentFragment.News[ position ].Image != null ) { if ( listItem.HasImage == false ) { listItem.HasImage = true; Rock.Mobile.PlatformSpecific.Android.UI.Util.FadeView( listItem.Billboard, true, null ); } listItem.Billboard.SetImageBitmap( ParentFragment.News[ position ].Image ); } // only show the "Loading..." if the image isn't actually downloaded. else if ( ParentFragment.Placeholder != null ) { listItem.Billboard.SetImageBitmap( ParentFragment.Placeholder ); } else { listItem.Billboard.SetImageBitmap( null ); } if ( ParentFragment.News[ position ].News.Developer_Private ) { listItem.PrivateOverlay.Visibility = ViewStates.Visible; } else { listItem.PrivateOverlay.Visibility = ViewStates.Gone; } } else { listItem.Billboard.SetImageBitmap( null ); listItem.PrivateOverlay.Visibility = ViewStates.Gone; } return base.AddView( listItem ); }
ListAdapter.ListItemView GetPrimaryView( int position, View convertView, ViewGroup parent ) { SingleNewsListItem listItem = convertView as SingleNewsListItem; if ( listItem == null ) { listItem = new SingleNewsListItem( Rock.Mobile.PlatformSpecific.Android.Core.Context ); int height = (int)System.Math.Ceiling( NavbarFragment.GetContainerDisplayWidth( ) * PrivateNewsConfig.NewsMainAspectRatio ); listItem.LayoutParameters = new AbsListView.LayoutParams( ViewGroup.LayoutParams.WrapContent, height ); listItem.HasImage = false; } // if we have a valid item if ( position < ParentFragment.News.Count ) { // is the image valid? if ( ParentFragment.News[ position ].Image != null ) { if ( listItem.HasImage == false ) { listItem.HasImage = true; Rock.Mobile.PlatformSpecific.Android.UI.Util.FadeView( listItem.Billboard, true, null ); } listItem.Billboard.SetImageBitmap( ParentFragment.News[ position ].Image ); } // then should we use the placeholder? else if ( ParentFragment.Placeholder != null && ParentFragment.News[ position ].ImageIsDownloaded == false ) { listItem.Billboard.SetImageBitmap( ParentFragment.Placeholder ); } else { listItem.Billboard.SetImageBitmap( null ); } } else { listItem.Billboard.SetImageBitmap( null ); } return listItem; }
ListAdapter.ListItemView GetPrimaryView( int position, View convertView, ViewGroup parent ) { SingleNewsListItem listItem = convertView as SingleNewsListItem; if ( listItem == null ) { listItem = new SingleNewsListItem( Rock.Mobile.PlatformSpecific.Android.Core.Context ); int width = NavbarFragment.GetCurrentContainerDisplayWidth( ); int height = (int)System.Math.Ceiling( width * PrivateNewsConfig.NewsBannerAspectRatio ); listItem.LayoutParameters = new AbsListView.LayoutParams( width, height ); listItem.HasImage = false; } else { listItem.FreeImageResources( ); } // if we have a valid item if ( position < ParentFragment.News.Count ) { // is the image valid? if ( ParentFragment.News[ position ].Image != null ) { if ( listItem.HasImage == false ) { listItem.HasImage = true; Rock.Mobile.PlatformSpecific.Android.UI.Util.FadeView( listItem.Billboard, true, null ); } listItem.Billboard.SetImageBitmap( ParentFragment.News[ position ].Image ); } // then should we use the (details) placeholder? else if ( ParentFragment.DetailsPlaceholder != null ) { listItem.Billboard.SetImageBitmap( ParentFragment.DetailsPlaceholder ); } else { listItem.Billboard.SetImageBitmap( null ); } if ( ParentFragment.News[ position ].News.Developer_Private ) { listItem.PrivateOverlay.Visibility = ViewStates.Visible; } else { listItem.PrivateOverlay.Visibility = ViewStates.Gone; } } else { listItem.Billboard.SetImageBitmap( null ); listItem.PrivateOverlay.Visibility = ViewStates.Gone; } return listItem; }