Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.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
Php 更新当前仅从活动的onCreate调用的更改好友列表?_Php_Android_Database_Listview_Navigation Drawer - Fatal编程技术网

Php 更新当前仅从活动的onCreate调用的更改好友列表?

Php 更新当前仅从活动的onCreate调用的更改好友列表?,php,android,database,listview,navigation-drawer,Php,Android,Database,Listview,Navigation Drawer,我会尽量让这件事尽可能简单。请容忍我,因为我对安卓系统还相当缺乏经验 我已经创建了一个侧面板抽屉布局,它为我的应用程序的用户显示朋友列表。这包括已发送的请求和已接收的请求: 到目前为止,每次创建活动时,向远程服务器发出的PHP请求都会在该列表中填充所有状态类型的好友,如下所示: MyAdapter=新MyAdapter此,populateFriendList 我将在列表中的每个朋友旁边都有按钮,可以接受请求、拒绝请求等。例如:在确认朋友时,我可以将其从列表视图的“已发送请求”部分删除,甚至更新数

我会尽量让这件事尽可能简单。请容忍我,因为我对安卓系统还相当缺乏经验

我已经创建了一个侧面板抽屉布局,它为我的应用程序的用户显示朋友列表。这包括已发送的请求和已接收的请求:

到目前为止,每次创建活动时,向远程服务器发出的PHP请求都会在该列表中填充所有状态类型的好友,如下所示:

MyAdapter=新MyAdapter此,populateFriendList

我将在列表中的每个朋友旁边都有按钮,可以接受请求、拒绝请求等。例如:在确认朋友时,我可以将其从列表视图的“已发送请求”部分删除,甚至更新数据库以反映这一点

但是,我应该如何更新列表视图,以查看最新的好友列表,并将新确认的好友作为好友


值得注意的是,旋转设备会导致朋友列表在再次调用onCreate方法时更新,这意味着populateFriendList会再次被调用。我明白这种方式可能不明智,但我不确定该怎么做。

有几种方法可以解决这个问题。当有新的好友请求时,可以使用GCM发送推送通知,也可以在服务中每隔一段时间对服务器进行长时间轮询,以查看是否有新请求

您的轮换每次都调用onCreate,因为这就是活动中发生的事情。您可以覆盖OnConfigurationChanged,这将处理旋转更改


您可以调用onNotifyDataSetChanged,让适配器知道有新数据要查看。

已处理onNotifyDataSetChanged部分。我想间隔服务可能是必要的。我发现了这样一个例子:这就这么简单吗?Vogella.com有很棒的教程!!!您可能需要启动一个服务,使其始终运行,并获得最新信息。好的,谢谢。我会试试看,让你知道我的进展如何。