コメント
コメントの投稿
※名前とタイトルが入力されていないコメントでは他のコメントとの区別ができません。
入力されていないコメントには返信しませんのであらかじめご了承くださいませ。
using UIKit;
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;
using AppName.iOS.Renderer;
[assembly: ExportRenderer(typeof(ListView), typeof(CustomListViewRenderer))]
namespace AppName.iOS.Renderer
{
public class CustomListViewRenderer : ListViewRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<ListView> e)
{
base.OnElementChanged(e);
if (Control == null) return;
// ListViewのセパレータの余白をゼロにします。
Control.SeparatorInset = UIEdgeInsets.Zero;
if (UIDevice.CurrentDevice.CheckSystemVersion(8, 0))
{
Control.LayoutMargins = UIEdgeInsets.Zero;
}
if (UIDevice.CurrentDevice.CheckSystemVersion(9, 0))
{
Control.CellLayoutMarginsFollowReadableWidth = false;
}
// ListView Separator - データが無い部分の線を消します。
Control.TableFooterView = new UIView();
}
}
}
using UIKit;
using Xamarin.Forms;
using Xamarin.Forms.Platform.iOS;
[assembly: ExportRenderer(typeof(ViewCell), typeof(CustomViewCellRenderer))]
namespace AppName.iOS.Renderer
{
public class CustomViewCellRenderer : ViewCellRenderer
{
public override UITableViewCell GetCell(Cell item, UITableViewCell reusableCell, UITableView tv)
{
var cell = base.GetCell(item, reusableCell, tv);
if (cell != null)
{
//iOS8/iOS9対応
if (!UIDevice.CurrentDevice.CheckSystemVersion(10, 0))
{
foreach (UITableViewCell tvCell in tv.VisibleCells)
{
tvCell.SeparatorInset = UIEdgeInsets.Zero;
if (UIDevice.CurrentDevice.CheckSystemVersion(8, 0))
{
tvCell.LayoutMargins = UIEdgeInsets.Zero;
tvCell.PreservesSuperviewLayoutMargins = false;
}
}
}
}
return cell;
}
}
}
※名前とタイトルが入力されていないコメントでは他のコメントとの区別ができません。
入力されていないコメントには返信しませんのであらかじめご了承くださいませ。