如何创建视图时动态更新片段(SlidingMenu)

时间:2013-04-16 22:34:56

标签: android android-asynctask android-fragments slidingmenu

我有使用SlidingMenu库的应用程序。主要Fragment中的Activity基本上是用户播放时进出视图(例如Youtube,Google +,Facebook)。

LinearLayout中的顶部SlidingMenu中包含一些动态信息。例如登录和其他信息随着用户在应用程序中的交互而变化。

一个例子:用户打开应用程序,SlidingMenu中的布局显示“登录”。他们进入overflow菜单,开始登录Activity(超过MainFragmentActivity),登录成功,登录Activity消失。下次他们刷开菜单时,他们应该看到他们的用户名,个人资料统计信息,个人资料图片等。

我的问题: 如何在不使用刷新按钮的情况下动态更改此布局?

这包括使用:

onCreateView()中的

fragment方法?

注意:目前,它仅在应用启动时更新。它会从AsynTask开始MySQL下载内容。每次用户打开面板时,打击数据库似乎浪费资源,是否有更有效的方式使用它?

2 个答案:

答案 0 :(得分:1)

您希望将内容缓存在手机本身(可能是在sqlite中),您需要在应用程序处于前台时间隔检查新的远程内容,和/或甚至使用类似Google Cloud的内容消息传递以ping您的应用程序,以防数据需要快速刷新 - 但不定期(就像您将与聊天应用程序或Twitter客户端一样)。

答案 1 :(得分:1)

正如Stephan所提到的,你可以在SQLite中缓存数据,最重要的是,你可以使用contentProvider,在存储的数据上返回一个Cursor,如登录名。

现在的好处是,当用户登录时,您可以在contentProvider中调用update,更新值,然后调用contentResolver.NotifyChange,这将更新游标中的结果,然后自动更新内容slideMenu。