コメント
コメントの投稿
※名前とタイトルが入力されていないコメントでは他のコメントとの区別ができません。
入力されていないコメントには返信しませんのであらかじめご了承くださいませ。
public TestPage()
{
// Android7対策の暫定処置 Xamarin.Forms 2.3.4.247以降で改善される予定?
ListViewCachingStrategy strategy = ListViewCachingStrategy.RecycleElement;
if (Device.RuntimePlatform == Device.Android &&
DependencyService.Get<IDeviceService>().IsUpperVersion(24, 0) == true) //Android7 Nougat 24-25
{
strategy = ListViewCachingStrategy.RetainElement;
}
ListView listView1 = new ListView(strategy);
}
using Xamarin.Forms;
public class BaseListView: ListView
{
public ListViewCachingStrategy CachingStrategy { get; }
public BaseListView(): base()
{
this.Initialize();
}
public BaseListView(ListViewCachingStrategy strategy) : base(BaseListView.GetStrategy(ref strategy))
{
this.CachingStrategy = strategy;
this.Initialize();
}
/// <summary>
/// Android7.0対策の暫定処置 Xamarin.Forms 2.3.5以降で改善される予定?
/// </summary>
/// <param name="strategy">ListViewCachingStrategy</param>
/// <returns>ListViewCachingStrategy</returns>
private static ListViewCachingStrategy GetStrategy(ref ListViewCachingStrategy strategy)
{
if (Device.RuntimePlatform == Device.Android &&
DependencyService.Get<IDeviceService>().IsUpperVersion(24, 0) == true) //Android7 Nougat 24-25
{
strategy = ListViewCachingStrategy.RetainElement;
}
return strategy;
}
private void Initialize()
{
//コンストラクタ共通の初期化処理
}
}
※名前とタイトルが入力されていないコメントでは他のコメントとの区別ができません。
入力されていないコメントには返信しませんのであらかじめご了承くださいませ。