Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin Android-RecyclerView未正确呈现UI更改_Android_Xamarin_Android Recyclerview - Fatal编程技术网

Xamarin Android-RecyclerView未正确呈现UI更改

Xamarin Android-RecyclerView未正确呈现UI更改,android,xamarin,android-recyclerview,Android,Xamarin,Android Recyclerview,我有一个显示各种通知的recyclerview。一种是带有接受和拒绝按钮的好友请求通知。单击接受或拒绝时,我更新状态,然后调用notifyDataSetChanged 这个调用调用我的绑定代码,然后隐藏接受和拒绝按钮。问题是我的接受和拒绝按钮没有隐藏 触摸recyclerview后,UI将正确更新,按钮将隐藏 因此,当我隐藏一些更改行高度的控件时,recyclerview似乎没有正确处理问题 我尝试在recyclerview上使用ForceLayout(),但没有成功。我如何才能让recycle

我有一个显示各种通知的recyclerview。一种是带有接受和拒绝按钮的好友请求通知。单击接受或拒绝时,我更新状态,然后调用notifyDataSetChanged

这个调用调用我的绑定代码,然后隐藏接受和拒绝按钮。问题是我的接受和拒绝按钮没有隐藏

触摸recyclerview后,UI将正确更新,按钮将隐藏

因此,当我隐藏一些更改行高度的控件时,recyclerview似乎没有正确处理问题

我尝试在recyclerview上使用ForceLayout(),但没有成功。我如何才能让recyclerview在没有用户更多交互的情况下重新正确布局

我被要求展示这方面的源代码:为了简洁起见,我省略了业务逻辑,因为它是在执行/不执行业务逻辑的情况下发生的

// this is part of my viewholder its the click event for accept
private async void OnClickAcceptRequest(object sender, EventArgs e)
{
    // update object state here...
    // now get it to redraw
     m_fragNotifications.lstNotifications.GetAdapter().NotifyDataSetChanged()

}

// in OnBindViewHolder I grab my item, then test...
if (vwView.CurrentNotification.State != State.Pending)
{ lytButtonsContainer.Visibility = ViewStates.Gone; }
else { lytButtonsContainer.Visibility = ViewStates.Visible; }

谢谢

调用notifyDataSetChanged()就足够了。你能把你的代码贴在你遇到问题的地方吗?否则就很难再帮你了。@Demitran,谢谢你回复我。我更新了以向您展示源代码。不多。我假设我的手机有什么特别的东西没人会看到,但我想我还是会问问周围的人。。。