protected void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); this.SetContentView(Resource.Layout.message); string messageId = savedInstanceState == null?this.Intent.GetStringExtra(EXTRA_MESSAGE_ID_KEY) : savedInstanceState.GetString(EXTRA_MESSAGE_ID_KEY); // Get the list of rich push messages this.messages = RichPushManager.Shared().RichPushUser.Inbox.Messages; // Sets up the MessageViewPager this.messagePager = (ViewPager)this.FindViewById(Resource.Id.message_pager); MessageFragmentAdapter messageAdapter = new MessageFragmentAdapter(this.SupportFragmentManager); this.messagePager.PageSelected += (sender, e) => { int _position = e.P0; messages [_position].MarkRead(); }; messageAdapter.SetRichPushMessages(messages); this.messagePager.Adapter = messageAdapter; // Get the first item to show int position = 0; RichPushMessage firstMessage = RichPushManager.Shared().RichPushUser.Inbox.GetMessage(messageId); if (firstMessage != null) { position = messages.IndexOf(firstMessage); if (position == -1) { position = 0; } } // Mark it as read messages [position].MarkRead(); // Sets the current item to the position of the current message this.messagePager.CurrentItem = position; this.SupportActionBar.SetDisplayHomeAsUpEnabled(true); this.SupportActionBar.SetHomeButtonEnabled(true); }
protected void OnCreate (Bundle savedInstanceState) { base.OnCreate (savedInstanceState); this.SetContentView (Resource.Layout.message); string messageId = savedInstanceState == null ? this.Intent.GetStringExtra (EXTRA_MESSAGE_ID_KEY) : savedInstanceState.GetString (EXTRA_MESSAGE_ID_KEY); // Get the list of rich push messages this.messages = RichPushManager.Shared ().RichPushUser.Inbox.Messages; // Sets up the MessageViewPager this.messagePager = (ViewPager)this.FindViewById (Resource.Id.message_pager); MessageFragmentAdapter messageAdapter = new MessageFragmentAdapter (this.SupportFragmentManager); this.messagePager.PageSelected += (sender, e) => { int _position = e.P0; messages [_position].MarkRead (); }; messageAdapter.SetRichPushMessages (messages); this.messagePager.Adapter = messageAdapter; // Get the first item to show int position = 0; RichPushMessage firstMessage = RichPushManager.Shared ().RichPushUser.Inbox.GetMessage (messageId); if (firstMessage != null) { position = messages.IndexOf (firstMessage); if (position == -1) { position = 0; } } // Mark it as read messages [position].MarkRead (); // Sets the current item to the position of the current message this.messagePager.CurrentItem = position; this.SupportActionBar.SetDisplayHomeAsUpEnabled (true); this.SupportActionBar.SetHomeButtonEnabled (true); }