Exemplo n.º 1
0
        private void SetUpRecyclerViews(CachingViewHolder holder, AttendanceCard course)
        {
            RecyclerviewList = new List <RecyclerView>
            {
                holder.FindCachedViewById <RecyclerView>(Resource.Id.AttendancePenaltyListRecyclerView1),
                holder.FindCachedViewById <RecyclerView>(Resource.Id.AttendancePenaltyListRecyclerView2),
                holder.FindCachedViewById <RecyclerView>(Resource.Id.AttendancePenaltyListRecyclerView3),
                holder.FindCachedViewById <RecyclerView>(Resource.Id.AttendancePenaltyListRecyclerView4)
            };

            /* Set adapters and linearlayoutmanagers to the recyclerviews */
            Activity.RunOnUiThread(() =>
            {
                for (int count = 0; count < 4; count++)
                {
                    /* Set Adapters */
                    RecyclerviewList[count].SetAdapter
                    (
                        course.AttendanceViolations[count].GetRecyclerAdapter
                            (BindChildViewHolder, Resource.Layout.AttendancePenaltyLayout)
                    );

                    /* Set Layout Managers */
                    RecyclerviewList[count].SetLayoutManager(new LinearLayoutManager(Activity));
                }
            });
        }
Exemplo n.º 2
0
        private void BindViewHolder(CachingViewHolder holder, AttendanceCard course, int position)
        {
            TextView _classNameTextView    = holder.FindCachedViewById <TextView>(Resource.Id.attendanceClassName);
            TextView _absenceNumber        = holder.FindCachedViewById <TextView>(Resource.Id.attendanceClassUnexcusedNumber);
            TextView _pendingAbsenceNumber = holder.FindCachedViewById <TextView>(Resource.Id.AttendancePendingUnexcusedNumber);
            TextView _tardyNumber          = holder.FindCachedViewById <TextView>(Resource.Id.AttendanceTardiesNumber);
            TextView _pendingTardyNumber   = holder.FindCachedViewById <TextView>(Resource.Id.AttendancePendingTardiesNumber);

            /* Set up the children recyclerviews                          */
            SetUpRecyclerViews(holder, course);

            /* Delete the binding                            */
            holder.DeleteBinding(_classNameTextView);
            holder.DeleteBinding(_absenceNumber);
            holder.DeleteBinding(_pendingAbsenceNumber);
            holder.DeleteBinding(_tardyNumber);
            holder.DeleteBinding(_pendingTardyNumber);

            /* Create a new binding and save it              */
            var _classNameBinding = new Binding <string, string>
                                    (
                course,
                () => course.CourseName,
                _classNameTextView,
                () => _classNameTextView.Text
                                    );

            var _absenceNumberBinding = new Binding <string, string>
                                        (
                course,
                () => course.Absences,
                _absenceNumber,
                () => _absenceNumber.Text
                                        );

            var _pendingAbsenceNumberBinding = new Binding <string, string>
                                               (
                course,
                () => course.PendingAbsences,
                _pendingAbsenceNumber,
                () => _pendingAbsenceNumber.Text
                                               );


            var _tardyNumberBinding = new Binding <string, string>
                                      (
                course,
                () => course.Tardies,
                _tardyNumber,
                () => _tardyNumber.Text
                                      );

            var _pendingTardyNumberBinding = new Binding <string, string>
                                             (
                course,
                () => course.PendingTardies,
                _pendingTardyNumber,
                () => _pendingTardyNumber.Text
                                             );

            holder.SaveBinding(_classNameTextView, _classNameBinding);
            holder.SaveBinding(_absenceNumber, _absenceNumberBinding);
            holder.SaveBinding(_pendingAbsenceNumber, _pendingAbsenceNumberBinding);
            holder.SaveBinding(_tardyNumber, _tardyNumberBinding);
            holder.SaveBinding(_pendingTardyNumber, _pendingTardyNumberBinding);
        }