如何在静态方法中使用共享的首选项



这里是我的静态方法

public static void messageHandler(final MessageMO messageMo) {
        UIHandler = new Handler(Looper.getMainLooper());
        UIHandler.post(new Runnable() {
            public void run() {
                //  SharedPreferences sharedPreferences1;
                Log.e("messageHandler", messageMo.getEventTitle());
                ChatMO chatMO = new ChatMO();
                chatMO.setMessage(messageMo.getMessage());
                chatMO.setSelf(0);
                chatMO.setFromName(messageMo.getfromUserName());
                chatMO.setDate(messageMo.getDate());
                chatMO.setEvent_id(messageMo.getEventId());
                Log.e("handler", "eventid" + chatMO.getEvent_id());
                Log.e("handler", "date" + chatMO.getDate());
                listChatMessageObjectses.add(chatMO);
                Log.e("handler", "listmessage" + listChatMessageObjectses);
                    }
        });
    }

在这里,我必须将listChatMessageObjects的值存储到共享的首选项中。如何做到这一点,要提前感谢

您需要更改方法签名以接收Context:

public static void messageHandler(final Context context, final MessageMO messageMo)

然后使用Context.getSharedPreferences打开首选项。

附言:listChatMessageObjects听起来有很多数据。。考虑使用ContentProvider来存储大量记录。

最新更新