void Adapter_ItemClick(object sender, RecyclerClickEventArgs e) { var helper = ViewModel.Helpers[e.Position]; FragmentManager.BeginTransaction().Replace(Resource.Id.content_frame, BasicUserProfileFragment.NewInstance(Newtonsoft.Json.JsonConvert.SerializeObject(helper))) .AddToBackStack(null).Commit(); }
void Adapter_ItemClick(object sender, RecyclerClickEventArgs e) { //Toast.MakeText(Context, "Clicked.", ToastLength.Short).Show(); var user = ViewModel.Users[e.Position]; FragmentManager.BeginTransaction().Replace(Resource.Id.content_frame, BasicUserProfileFragment.NewInstance(Newtonsoft.Json.JsonConvert.SerializeObject(user))) .AddToBackStack(null).Commit(); }
public static BasicUserProfileFragment NewInstance(string user) { var bundle = new Bundle(); bundle.PutString("userData", user); var fragment = new BasicUserProfileFragment { Arguments = bundle }; return(fragment); }
public override async void OnStart() { base.OnStart(); refresher.Refresh += Refresher_Refresh; if (ViewModel.Question == null) { await ViewModel.ExecuteLoadQuestionDetailCommandAsync(); } questionTitle.Text = ViewModel.Question.Title; questionBody.Text = ViewModel.Question.Body; status.Text = ViewModel.Question.State; if (ViewModel.Question.State == "Closed") { status.SetTextColor(new Color(Android.Support.V4.Content.ContextCompat.GetColor(Activity, Resource.Color.alert_red))); } else if (ViewModel.Question.State == "Active") { status.SetTextColor(new Color(Android.Support.V4.Content.ContextCompat.GetColor(Activity, Resource.Color.alert_green))); } else if (ViewModel.Question.State == "In Progress") { status.SetTextColor(new Color(Android.Support.V4.Content.ContextCompat.GetColor(Activity, Resource.Color.alert_yellow))); } foreach (var topic in ViewModel.Question.Topics) { tags.Text = tags.Text + topic + " "; } postedDate.Text = "Posted " + ViewModel.Question.CreatedAt.ToString("d MMMM, yyyy"); ownerFullName.Text = ViewModel.Question.Owner.FirstName + " " + ViewModel.Question.Owner.LastName; ownerUsername.Text = "@" + ViewModel.Question.Owner.Username; ownerHolder.Click += (sender, e) => { FragmentManager.BeginTransaction().Replace(Resource.Id.content_frame, BasicUserProfileFragment.NewInstance(Newtonsoft.Json.JsonConvert.SerializeObject(ViewModel.Question.Owner))) .AddToBackStack(null).Commit(); }; var count = ViewModel.Answers.Count; if (count == 0) { answerCount.Text = "NO RESPONSE YET"; } else if (count == 1) { answerCount.Text = count + " RESPONSE"; } else { answerCount.Text = count + " RESPONSES"; } }
// Replace the contents of a view (invoked by the layout manager) public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position) { var answer = viewModel.Answers[position]; // Replace the contents of the view with that element var myHolder = holder as AnswerViewHolder; myHolder.FullName.Text = answer.CreatedBy.FirstName + " " + answer.CreatedBy.LastName; myHolder.TimeAgo.Text = answer.TimeAgo; myHolder.BodyView.Text = answer.Body; myHolder.FullName.Click += (sender, e) => { fragmentManager.BeginTransaction().Replace(Resource.Id.content_frame, BasicUserProfileFragment.NewInstance(Newtonsoft.Json.JsonConvert.SerializeObject(answer.CreatedBy))) .AddToBackStack(null).Commit(); }; }