私のアプリの3番目のページにはListViewが含まれていますが、ビューを切り替える(表示をItemSource
を別のリストに切り替える)まで、または何らかの理由でリストが表示されないスクリーン。リストビューがすぐに表示されないxamarinフォーム
トグルを2回実行すると(元の開始状態に戻るため)、リストビューはまだ存在します。それはバグのようですが、私はそれで何かを見つけることができませんでした。
public partial class ReviewRequestsPage : ContentPage
{
private readonly List<RequestCell> closedRequestCells = new List<RequestCell>();
private readonly List<RequestCell> openRequestCells = new List<RequestCell>();
public ReviewRequestsPage()
{
InitializeComponent();
NavigationPage.SetHasNavigationBar(this, false);
BindingContext = new SvgImagesViewModels();
new Footer().SetGestureRecognizers(null, Notifications, Help, Home, this);
LoadRequestLists();
ToggleSwitch.PropertyChanged += (o, ea) => { HandleToggle(((Switch) o).IsToggled); };
}
....
private void LoadRequestLists()
{
UserDialogs.Instance.ShowLoading("Loading Requests...", MaskType.Black);
var client = new RestService().Client;
var request =
new RequestService().GetAllRequests();
client.ExecuteAsync(request, response =>
{
var myList = JsonConvert.DeserializeObject<List<Request>>(response.Content, new DateTimeConverter());
myList.ForEach(r =>
{
if (r.status.type == StatusType.CLOSED) closedRequestCells.Add(new RequestCell(r));
else if (r.status.type != StatusType.DELETED) openRequestCells.Add(new RequestCell(r));
});
UserDialogs.Instance.HideLoading();
RequestsList.ItemSource = openRequestCells;
});
}
private void HandleToggle(bool isToggled)
{
Switchlabel.Text = isToggled ? Constants.Closed : Constants.Open;
RequestsList.ItemsSource = isToggled ? closedRequestCells : openRequestCells;
}
ItemSourceを設定すると、リストビューが表示されるように他のものが呼び出されたり、実行されたりしていますか?なぜそれがまだではないのかは分かりません。また、何も失敗していて、すべてが期待どおりに動作しています。
私はあなたの言いたいことを見ています。しかし、なぜこのリストをトグルして表示するのでしょうか?または画面を回転させますか?また、私はリストを 'ObservableCollection'に変更しました。 – John