3 天前我刚刚开始 android 开发,我正在尝试为 Yahoo 开发一个 Messenger。地狱的第一个应用程序,对吧?!:D
我现在面临的问题是我正在尝试实现一个选项卡式 IM 窗口,该窗口应该向人们展示我目前正在与之聊天的人。我为单个聊天窗口设计了一个布局文件和必要的活动类,我正在使用一个TabActivity
向用户展示其中的几个。但是问题是我在活动类本身中存储了一些特定于聊天的信息(例如我当前正在聊天的用户的 ID),并且在创建新选项卡时初始化这些值时遇到问题。
最初我使用一个BroadcastReceiver
和一个意图来初始化,如下所示:
protected class MyListener extends BroadcastReceiver
{
@Override
public void onReceive(Context context, Intent intent)
{
if (intent.getAction().equals(
"com.sirm2x.messenger.CHAT_WINDOW_CREATED"))
{
ChatWindowActivity.this.friendId = intent.getExtras()
.getString("friendId");
}
}
}
问题是friendId
所有活动都设置为为最后一个要创建的选项卡传递的值!
这种情况的解决方案/最佳实践是什么?我是否正确地解决了这个问题?
非常感谢任何帮助!