예제 #1
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.rateus_layout);
            resultTextView = FindViewById <TextView>(Resource.Id.resultText);
            imageView      = FindViewById <ImageView>(Resource.Id.imageView1);
            pictureButton  = FindViewById <Button>(Resource.Id.GetPictureButton);
            progressView   = FindViewById <RadialProgressView>(Resource.Id.progressView);

            progressView.MinValue = 0;
            progressView.MaxValue = 5;
            if (progressView.IsDone)
            {
                progressView.Reset();
            }

            alert = new Builder(this);

            if (IsThereAnAppToTakePictures())
            {
                CreateDirectoryForPictures();
                pictureButton.Click += OnActionClick;
            }
        }
예제 #2
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            // Create your application here
            SetContentView(Resource.Layout.Timer);

            radialProgressView = FindViewById <RadialProgressView>(Resource.Id.progressView);
            btnStart           = FindViewById <Button>(Resource.Id.btnStart);
            btnStop            = FindViewById <Button>(Resource.Id.btnStop);
            txtTimer           = FindViewById <TextView>(Resource.Id.txtTimer);

            btnStart.Click += delegate {
                btnStart.Enabled = false;
                btnStop.Enabled  = true;
                timer            = new Timer();
                timer.Interval   = 1000;
                timer.Elapsed   += Timer_Elapsed;
                timer.Start();
            };

            btnStop.Click += delegate {
                btnStart.Enabled = true;
                btnStop.Enabled  = false;
                timer.Dispose();
                timer = null;
            };
        }
예제 #3
0
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            // Set our view from the "main" layout resource
            SetContentView(Resource.Layout.Main);


            radialProgressview = FindViewById <RadialProgressView>(Resource.Id.progressView);
            bntStart           = FindViewById <Button>(Resource.Id.btnStart);
            btnStop            = FindViewById <Button>(Resource.Id.btnStop);
            txtTimer           = FindViewById <TextView>(Resource.Id.txtTimer);


            bntStart.Click += delegate
            {
                timer          = new Timer();
                timer.Interval = 1000;                // representa un segundo
                timer.Elapsed += Timer_Elapsed;
                timer.Start();
            };
            btnStop.Click += delegate {
                timer.Dispose();
                timer = null;
            };
        }
        protected override void OnElementChanged(ElementChangedEventArgs <Xamarin.Forms.View> e)
        {
            base.OnElementChanged(e);

            if (Control == null)
            {
                // Instantiate the native control and assign it to the Control property with
                // the SetNativeControl method

                progressView = new RadialProgressView(getLabelText, RadialProgressViewStyle.Small);

                SetNativeControl(progressView);
            }

            if (e.OldElement != null)
            {
                // Unsubscribe from event handlers and cleanup any resources
                progressView.LabelTextDelegate = null;
                progressView.Dispose();
                progressView = null;
                formsControl = null;
            }

            if (e.NewElement != null)
            {
                // Configure the control and subscribe to event handlers
                formsControl = e.NewElement as ProgressView;

                var percentValue = formsControl.PercentComplete / 100.0f;

                progressView.LabelTextDelegate = (arg) => formsControl.LabelText;
                progressView.Value             = percentValue;
                progressView.Center            = new PointF((float)formsControl.Bounds.Center.X, (float)formsControl.Bounds.Center.Y - 100);

                if (formsControl.LabelStyle.ToLower().Equals("failure"))
                {
                    progressView.ProgressColor = formsControl.FailureProgressColor.ToUIColor();
                    RadialProgressLayer.BackCircleBackgroundColor = formsControl.FailureBackgroundColor.ToCGColor();
                    progressView.InitSubviews();
                }
                else if (formsControl.LabelStyle.ToLower().Equals("complete"))
                {
                    progressView.ProgressColor = formsControl.SuccessProgressColor.ToUIColor();
                    RadialProgressLayer.BackCircleBackgroundColor = formsControl.SuccessBackgroundColor.ToCGColor();
                    progressView.InitSubviews();
                }
                else
                {
                    progressView.ProgressColor = RadialProgressLayer.DefaultFillColor;
                    RadialProgressLayer.BackCircleBackgroundColor = RadialProgressLayer.DefaultBackgroundColor;
                    progressView.InitSubviews();
                }
            }
        }
예제 #5
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var progressView = new RadialProgressView {
                Center = new PointF(View.Center.X, View.Center.Y - 100)
            };

            View.AddSubview(progressView);

            buttonAdd.TouchUpInside += (sender, e) => {
                progressView.Value += 0.05f;
            };
        }
		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();

			var progressView = new RadialProgressView {
				Center = new PointF (View.Center.X, View.Center.Y - 100)
			};

			View.AddSubview(progressView);

			buttonAdd.TouchUpInside += (sender, e) => {
				progressView.Value += 0.05f;
			};
		}
        protected override void OnElementChanged(ElementChangedEventArgs <Xamarin.Forms.View> e)
        {
            base.OnElementChanged(e);

            if (Control == null)
            {
                progressView = new RadialProgressView(Context, labelTextFunc: getLabelText, progressType: RadialProgressViewStyle.Small);
                progressView.SetPadding(20, 20, 20, 20);

                SetNativeControl(progressView);
            }

            if (e.OldElement != null)
            {
                // Unsubscribe from event handlers and cleanup any resources
                progressView.LabelTextDelegate = null;
                progressView.Dispose();
                progressView = null;
                formsControl = null;
            }

            if (e.NewElement != null)
            {
                // Configure the control and subscribe to event handlers
                formsControl = e.NewElement as ProgressView;

                var percentValue = formsControl.PercentComplete / 100.0f;

                if (formsControl.LabelStyle.ToLower().Equals("failure"))
                {
                    progressView.ProgressColor = formsControl.FailureProgressColor.ToAndroid();
                    RadialProgressView.CircleBackgroundColor = formsControl.FailureBackgroundColor.ToAndroid();
                    progressView.InitPaints();
                }
                else if (formsControl.LabelStyle.ToLower().Equals("complete"))
                {
                    progressView.ProgressColor = formsControl.SuccessProgressColor.ToAndroid();
                    RadialProgressView.CircleBackgroundColor = formsControl.SuccessBackgroundColor.ToAndroid();
                    progressView.InitPaints();
                }
                else
                {
                    progressView.ProgressColor = RadialProgressView.DefaultColor;
                    RadialProgressView.CircleBackgroundColor = RadialProgressView.DefaultCircleBackgroundColor;
                    progressView.InitPaints();
                }

                progressView.Value = percentValue;
            }
        }
예제 #8
0
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            SetContentView(Resource.Layout.Main);

            bigRadialProgress   = FindViewById <RadialProgressView> (Resource.Id.bigProgress);
            smallRadialProgress = FindViewById <RadialProgressView> (Resource.Id.smallProgress);
            tinyRadialProgress  = FindViewById <RadialProgressView> (Resource.Id.tinyProgress);

            btn        = FindViewById <Button> (Resource.Id.myButton);
            btn.Click += HandleClick;

            // Also you can add radial progress programmatically, if you want
            // var radialProgress = new RadialProgress(this, 0, 100, RadialProgressViewStyle.Big);
            // FindViewById<LinearLayout>(Resource.Id.rootLayout).AddView(radialProgress);
        }
예제 #9
0
		protected override void OnCreate (Bundle bundle)
		{
			base.OnCreate (bundle);
			SetContentView (Resource.Layout.Main);

			bigRadialProgress = FindViewById<RadialProgressView> (Resource.Id.bigProgress);
			smallRadialProgress = FindViewById<RadialProgressView> (Resource.Id.smallProgress);
			tinyRadialProgress = FindViewById<RadialProgressView> (Resource.Id.tinyProgress);

			btn = FindViewById<Button> (Resource.Id.myButton);
			btn.Click += HandleClick;

			// Also you can add radial progress programmatically, if you want
			// var radialProgress = new RadialProgress(this, 0, 100, RadialProgressViewStyle.Big);
			// FindViewById<LinearLayout>(Resource.Id.rootLayout).AddView(radialProgress);
		}
예제 #10
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // Perform any additional setup after loading the view, typically from a nib.
            ProgressView = new RadialProgressView {
                Center   = new PointF(View.Center.X, View.Center.Y - 100),
                MaxValue = 100,
                MinValue = 0
            };
            ProgressView.Value  = 0;
            SliderControl.Value = 0;

            SliderControl.ValueChanged += SliderValueChanged;
            View.AddSubview(ProgressView);
        }
예제 #11
0
        //Opening Main activities of MainActivity
        private void FindViews()
        {
            Typeface tf  = Typeface.CreateFromAsset(Assets, "PoppinsMedium.ttf");
            Typeface tf1 = Typeface.CreateFromAsset(Assets, "Khula-SemiBold.ttf");

            var objTwitter = FindViewById <ImageButton>(Resource.Id.connectTwitter);
            var objFB      = FindViewById <ImageButton>(Resource.Id.connectFB);
            var objInsta   = FindViewById <ImageButton>(Resource.Id.connectInsta);
            var objYoutube = FindViewById <ImageButton>(Resource.Id.connectUtube);

            objTwitter.Click += Obj_Click;
            objFB.Click      += ObjFB_Click;
            objInsta.Click   += ObjInsta_Click;
            objYoutube.Click += ObjYoutube_Click;
            //connectFB1 = FindViewById<ImageButton>(Resource.Id.connectFB);
            //connectInsta1 = FindViewById<ImageButton>(Resource.Id.connectInsta);
            //connectUtube1 = FindViewById<ImageButton>(Resource.Id.connectUtube);
            //connectTwitter1 = FindViewById<ImageButton>(Resource.Id.connectTwitter);
            LiveRaces = FindViewById <Button>(Resource.Id.MainActivityRace);
            ViewMap   = FindViewById <Button>(Resource.Id.MainActivityMap);
            LiveRaces.SetTypeface(tf, TypefaceStyle.Bold);
            ViewMap.SetTypeface(tf, TypefaceStyle.Bold);
            var timerLabel = FindViewById <TextView>(Resource.Id.textCountdown);

            timerLabel.SetTypeface(tf, TypefaceStyle.Bold);
            day    = FindViewById <RadialProgressView>(Resource.Id.dayProgress);
            hour   = FindViewById <RadialProgressView>(Resource.Id.hourProgress);
            minute = FindViewById <RadialProgressView>(Resource.Id.minuteProgress);
            var dayLabel     = FindViewById <TextView>(Resource.Id.textViewDayLabel);
            var hourLabel    = FindViewById <TextView>(Resource.Id.textViewHourLabel);
            var minutesLabel = FindViewById <TextView>(Resource.Id.textViewMinutesLabel);

            layoutDate    = FindViewById <LinearLayout>(Resource.Id.linearLayoutDays);
            layoutHours   = FindViewById <LinearLayout>(Resource.Id.linearLayoutHours);
            layoutMinutes = FindViewById <LinearLayout>(Resource.Id.linearLayoutMinutes);
            dayLabel.SetTypeface(tf1, TypefaceStyle.Normal);
            hourLabel.SetTypeface(tf1, TypefaceStyle.Normal);
            minutesLabel.SetTypeface(tf1, TypefaceStyle.Normal);
            //Barclays = FindViewById<Button>(Resource.Id.MainActivityBarclays);
        }
        private LinearLayout CreateRadialLayout(RadialProgressView radialView, string text)
        {
            var individualLayout = new LinearLayout(_context)
            {
                Orientation = Orientation.Vertical
            };

            individualLayout.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent, 1);
            individualLayout.SetGravity(GravityFlags.Center);

            var labelValue = new TextView(_context);

            labelValue.Text = text;
            labelValue.SetPadding(0, 10, 0, 5);
            labelValue.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent, 1);
            individualLayout.AddView(labelValue);

            radialView.LayoutParameters = new LinearLayout.LayoutParams(100, 100);
            individualLayout.SetPadding(0, 0, 0, 10);
            individualLayout.AddView(radialView);
            return(individualLayout);
        }
예제 #13
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            AddBackground();

            // Add our different styles of RadialProgressViews
            bigRadialProgressView = new RadialProgressView();
            bigRadialProgressView.LabelTextDelegate = (val) => Math.Floor(100 - val * 100).ToString().PadLeft(2, '0');
            bigRadialProgressView.Center            = new CGPoint(View.Center.X, View.Center.Y - 100);
            bigRadialProgressView.AutoresizingMask  = UIViewAutoresizing.FlexibleMargins;
            View.AddSubview(bigRadialProgressView);

            smallRadialProgressView = new RadialProgressView(progressType: RadialProgressViewStyle.Small);
            smallRadialProgressView.ProgressColor    = UIColor.Gray;
            smallRadialProgressView.Center           = new CGPoint(bigRadialProgressView.Frame.Left / 2, bigRadialProgressView.Center.Y);
            smallRadialProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleMargins;
            View.AddSubview(smallRadialProgressView);

            tinyRadialProgressView = new RadialProgressView(progressType: RadialProgressViewStyle.Tiny);
            tinyRadialProgressView.ProgressColor    = UIColor.White;
            tinyRadialProgressView.Center           = new CGPoint(bigRadialProgressView.Frame.Right + (View.Frame.Width - bigRadialProgressView.Frame.Right) / 2, bigRadialProgressView.Center.Y);
            tinyRadialProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleMargins;
            View.AddSubview(tinyRadialProgressView);

            standardProgressView                  = new UIProgressView(UIProgressViewStyle.Bar);
            standardProgressView.Frame            = new CGRect(30, bigRadialProgressView.Frame.Bottom + 80, View.Frame.Width - 60, 10);
            standardProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleBottomMargin | UIViewAutoresizing.FlexibleTopMargin | UIViewAutoresizing.FlexibleWidth;
            View.AddSubview(standardProgressView);

            startProgressButton       = UIButton.FromType(UIButtonType.RoundedRect);
            startProgressButton.Frame = new CGRect(50, standardProgressView.Frame.Bottom + 40, View.Frame.Width - 100, 30);
            startProgressButton.SetTitle("Start Progress", UIControlState.Normal);
            startProgressButton.AutoresizingMask = UIViewAutoresizing.FlexibleBottomMargin | UIViewAutoresizing.FlexibleTopMargin | UIViewAutoresizing.FlexibleWidth;
            startProgressButton.TouchUpInside   += OnStartProgressTapped;
            View.AddSubview(startProgressButton);
        }
예제 #14
0
		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();
			
			AddBackground ();

			// Add our different styles of RadialProgressViews
            bigRadialProgressView = new RadialProgressView ();
            bigRadialProgressView.LabelTextDelegate = (val) => Math.Floor(100-val*100).ToString().PadLeft(2, '0');
			bigRadialProgressView.Center = new CGPoint (View.Center.X, View.Center.Y - 100);
			bigRadialProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleMargins;
			View.AddSubview (bigRadialProgressView);

			smallRadialProgressView = new RadialProgressView (progressType: RadialProgressViewStyle.Small);
			smallRadialProgressView.ProgressColor = UIColor.Gray;
			smallRadialProgressView.Center = new CGPoint (bigRadialProgressView.Frame.Left / 2, bigRadialProgressView.Center.Y);
			smallRadialProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleMargins;
			View.AddSubview (smallRadialProgressView);

            tinyRadialProgressView = new RadialProgressView (progressType: RadialProgressViewStyle.Tiny);
			tinyRadialProgressView.ProgressColor = UIColor.White;
			tinyRadialProgressView.Center = new CGPoint (bigRadialProgressView.Frame.Right + (View.Frame.Width - bigRadialProgressView.Frame.Right) / 2, bigRadialProgressView.Center.Y);
			tinyRadialProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleMargins;
			View.AddSubview (tinyRadialProgressView);

			standardProgressView = new UIProgressView (UIProgressViewStyle.Bar);
			standardProgressView.Frame = new CGRect (30, bigRadialProgressView.Frame.Bottom + 80, View.Frame.Width - 60, 10);
			standardProgressView.AutoresizingMask = UIViewAutoresizing.FlexibleBottomMargin | UIViewAutoresizing.FlexibleTopMargin | UIViewAutoresizing.FlexibleWidth;
			View.AddSubview (standardProgressView);

			startProgressButton = UIButton.FromType (UIButtonType.RoundedRect);
			startProgressButton.Frame = new CGRect (50, standardProgressView.Frame.Bottom + 40, View.Frame.Width - 100, 30);
			startProgressButton.SetTitle ("Start Progress", UIControlState.Normal);
			startProgressButton.AutoresizingMask = UIViewAutoresizing.FlexibleBottomMargin | UIViewAutoresizing.FlexibleTopMargin | UIViewAutoresizing.FlexibleWidth;
			startProgressButton.TouchUpInside += OnStartProgressTapped;
			View.AddSubview (startProgressButton);
		}
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (_innerView != null)
                {
                    _innerView.Dispose();
                    _innerView = null;
                }
                if (_jobName != null)
                {
                    _jobName.Dispose();
                    _jobName = null;
                }
                if (_companyName != null)
                {
                    _companyName.Dispose();
                    _companyName = null;
                }
                if (_officeLocation != null)
                {
                    _officeLocation.Dispose();
                    _officeLocation = null;
                }
                if (_dueDateView != null)
                {
                    _dueDateView.Dispose();
                    _dueDateView = null;
                }
                if (_jobStatusView != null)
                {
                    _jobStatusView.Dispose();
                    _jobStatusView = null;
                }
                if (_rightDueDateDivider != null)
                {
                    _rightDueDateDivider.Dispose();
                    _rightDueDateDivider = null;
                }
                if (_lightsContainerView != null)
                {
                    _lightsContainerView.Dispose();
                    _lightsContainerView = null;
                }
                if (_greenLightView != null)
                {
                    _greenLightView.Dispose();
                    _greenLightView = null;
                }
                if (_yellowLightView != null)
                {
                    _yellowLightView.Dispose();
                    _yellowLightView = null;
                }
                if (_redLightView != null)
                {
                    _redLightView.Dispose();
                    _redLightView = null;
                }
                if (_tasksInProgressView != null)
                {
                    _tasksInProgressView.Dispose();
                    _tasksInProgressView = null;
                }
                if (_tasksInProgressSeperatorView != null)
                {
                    _tasksInProgressSeperatorView.Dispose();
                    _tasksInProgressSeperatorView = null;
                }
                if (_tasksInReviewView != null)
                {
                    _tasksInReviewView.Dispose();
                    _tasksInReviewView = null;
                }
                if (_tasksInReviewSeperatorView != null)
                {
                    _tasksInReviewSeperatorView.Dispose();
                    _tasksInReviewSeperatorView = null;
                }
                if (_tasksForReviewView != null)
                {
                    _tasksForReviewView.Dispose();
                    _tasksForReviewView = null;
                }
                if (_tasksForReviewSeperatorView != null)
                {
                    _tasksForReviewSeperatorView.Dispose();
                    _tasksForReviewSeperatorView = null;
                }
                if (_tasksToDoView != null)
                {
                    _tasksToDoView.Dispose();
                    _tasksToDoView = null;
                }

                if (_tasksInProgressHeader != null)
                {
                    _tasksInProgressHeader.Dispose();
                    _tasksInProgressHeader = null;
                }
                if (_tasksInReviewHeader != null)
                {
                    _tasksInReviewHeader.Dispose();
                    _tasksInReviewHeader = null;
                }
                if (_tasksForReviewHeader != null)
                {
                    _tasksForReviewHeader.Dispose();
                    _tasksForReviewHeader = null;
                }
                if (_tasksToDoHeader != null)
                {
                    _tasksToDoHeader.Dispose();
                    _tasksToDoHeader = null;
                }
                if (_tasksInProgress != null)
                {
                    _tasksInProgress.Dispose();
                    _tasksInProgress = null;
                }
                if (_tasksInReview != null)
                {
                    _tasksInReview.Dispose();
                    _tasksInReview = null;
                }
                if (_tasksForReview != null)
                {
                    _tasksForReview.Dispose();
                    _tasksForReview = null;
                }
                if (_tasksToDo != null)
                {
                    _tasksToDo.Dispose();
                    _tasksToDo = null;
                }
                if (_topDivider != null)
                {
                    _topDivider.Dispose();
                    _topDivider = null;
                }
                if (_middleDivider != null)
                {
                    _middleDivider.Dispose();
                    _middleDivider = null;
                }
                if (_bottomDivider != null)
                {
                    _bottomDivider.Dispose();
                    _bottomDivider = null;
                }
                if (_percentPrepView != null)
                {
                    _percentPrepView.Dispose();
                    _percentPrepView = null;
                }
                if (_percentWorkView != null)
                {
                    _percentWorkView.Dispose();
                    _percentWorkView = null;
                }
                if (_percentDeliveryView != null)
                {
                    _percentDeliveryView.Dispose();
                    _percentDeliveryView = null;
                }
                if (_percentPrepHeader != null)
                {
                    _percentPrepHeader.Dispose();
                    _percentPrepHeader = null;
                }
                if (_percentWorkHeader != null)
                {
                    _percentWorkHeader.Dispose();
                    _percentWorkHeader = null;
                }
                if (_percentDeliveryHeader != null)
                {
                    _percentDeliveryHeader.Dispose();
                    _percentDeliveryHeader = null;
                }
                if (_percentPrepRadialView != null)
                {
                    _percentPrepRadialView.Dispose();
                    _percentPrepRadialView = null;
                }
                if (_percentWorkRadialView != null)
                {
                    _percentWorkRadialView.Dispose();
                    _percentWorkRadialView = null;
                }
                if (_percentDeliveryRadialView != null)
                {
                    _percentDeliveryRadialView.Dispose();
                    _percentDeliveryRadialView = null;
                }
            }
            base.Dispose(disposing);
        }
예제 #16
0
 public CardPercentViewHolder(View v)
     : base(v)
 {
     Percent = v.FindViewById<RadialProgressView>(Resource.Id.resultCard_percent);
 }
        private void SetupUi()
        {
            try
            {
                //set the selection style
                this.SelectionStyle = UITableViewCellSelectionStyle.None;

                //set the background color of the cell to the same color of the tableView
                this.BackgroundColor = Helper.Theme.Color.C19;

                //set the border of the cell to be a little lighter, this will give it the look that the cell is floating in space by having the business card view's background color white
                //create a inner view that we change the background color and all content in.  This will make the content look like it's floating in the table view
                _innerView = new UIView
                {
                    BackgroundColor = Helper.Theme.Color.C1,
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Layer = {
                        BorderColor = Helper.Theme.Color.C20.CGColor,
                        BorderWidth = 1.0f,
                    }
                };

                //add the innerView into the contentview of the cell and attach it to the top, bottom, left, and right side of the cell
                this.ContentView.InsertSubview(_innerView, 0);
                AutoLayoutHelper.AttachToParentHorizontally(this.ContentView, _innerView, 0);
                AutoLayoutHelper.AttachToParentVertically(this.ContentView, _innerView, 4);

                //setup header labels
                _companyName = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13,
                    LineBreakMode = UILineBreakMode.WordWrap,
                    Lines = 0
                };

                _innerView.InsertSubview(_companyName, 0);
                //setup _companyName layout in innerView below _jobName 
                AutoLayoutHelper.AttachToParentTop(_innerView, _companyName, 4);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _companyName, 10);

                _officeLocation = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13,
                    LineBreakMode = UILineBreakMode.WordWrap,
                    Lines = 0
                };

                _innerView.InsertSubview(_officeLocation, 0);
                //setup _officeLocation layout in innerView below _jobName 
                AutoLayoutHelper.FollowControlVertically(_innerView, _companyName, _officeLocation, 2);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _officeLocation, 10);

                _jobName = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H4),
                    TextColor = Helper.Theme.Color.C3,
                    LineBreakMode = UILineBreakMode.WordWrap,
                    Lines = 0
                };

                _innerView.InsertSubview(_jobName, 0);
                //setup _jobName layout in innerview
                AutoLayoutHelper.FollowControlVertically(_innerView, _officeLocation, _jobName, 10);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _jobName, 10);

                _topDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_topDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _jobName, _topDivider, 6);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _topDivider, 4);
                AutoLayoutHelper.SetHeight(_topDivider, 1.0f);

                //setup the middle row of due date and status
                _dueDateView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_dueDateView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _topDivider, _dueDateView, 1);
                AutoLayoutHelper.AttachToParentLeft(_innerView, _dueDateView, 10);

                _dueDate = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    LineBreakMode = UILineBreakMode.Clip
                };

                _dueDateView.InsertSubview(_dueDate, 0);
                AutoLayoutHelper.CenterControlHorizontally(_dueDateView, _dueDate);
                AutoLayoutHelper.CenterControlVertically(_dueDateView, _dueDate);

                //setup the divider between them to draw line to seperate data
                _rightDueDateDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_rightDueDateDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _topDivider, _rightDueDateDivider, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _dueDateView, _rightDueDateDivider, 10);

                AutoLayoutHelper.SetWidth(_rightDueDateDivider, 2);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _dueDateView, _rightDueDateDivider, 1);

                _jobStatusView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_jobStatusView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _topDivider, _jobStatusView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _rightDueDateDivider, _jobStatusView, 10);
                AutoLayoutHelper.AttachToParentRight(_innerView, _jobStatusView, 10);


                _lightsContainerView = new UIView()
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _jobStatusView.InsertSubview(_lightsContainerView, 0);
                AutoLayoutHelper.CenterControlHorizontally(_jobStatusView, _lightsContainerView);
                AutoLayoutHelper.CenterControlVertically(_jobStatusView, _lightsContainerView);

                //create stop lights for KPI
                _greenLightView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C8.ColorWithAlpha(0.5f),
                    Layer = { CornerRadius = 10 }
                };

                _lightsContainerView.InsertSubview(_greenLightView, 0);
                AutoLayoutHelper.AttachToParentVertically(_lightsContainerView, _greenLightView, 5);
                AutoLayoutHelper.AttachToParentLeft(_lightsContainerView, _greenLightView, 5);

                AutoLayoutHelper.SetHeight(_greenLightView, 20);
                AutoLayoutHelper.SetWidth(_greenLightView, 20);

                _yellowLightView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C8.ColorWithAlpha(0.5f),
                    Layer = { CornerRadius = 10 }
                };

                _lightsContainerView.InsertSubview(_yellowLightView, 0);

                AutoLayoutHelper.FollowControlHorizontally(_lightsContainerView, _greenLightView, _yellowLightView, 10);
                AutoLayoutHelper.AttachToParentVertically(_lightsContainerView, _yellowLightView, 5);

                AutoLayoutHelper.SetHeight(_yellowLightView, 20);
                AutoLayoutHelper.SetWidth(_yellowLightView, 20);

                _redLightView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C8.ColorWithAlpha(0.5f),
                    Layer = { CornerRadius = 10 }
                };

                _lightsContainerView.InsertSubview(_redLightView, 0);
                AutoLayoutHelper.FollowControlHorizontally(_lightsContainerView, _yellowLightView, _redLightView, 10);
                AutoLayoutHelper.AttachToParentRight(_lightsContainerView, _redLightView, 5);
                AutoLayoutHelper.AttachToParentVertically(_jobStatusView, _redLightView, 5);

                AutoLayoutHelper.SetHeight(_redLightView, 20);
                AutoLayoutHelper.SetWidth(_redLightView, 20);

                //set the job status view and the due date view to be the same width
                AutoLayoutHelper.SetRelativeWidth(_innerView, _jobStatusView, _dueDateView, 1);

                //set the due date view and job status view to the same height
                AutoLayoutHelper.SetRelativeHeight(_innerView, _jobStatusView, _dueDateView, 1);

                //draw divider between status and graphics
                _middleDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_middleDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _dueDateView, _middleDivider, 1);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _middleDivider, 4);
                AutoLayoutHelper.SetHeight(_middleDivider, 1);


                _percentPrepView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_percentPrepView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _middleDivider, _percentPrepView, 4);
                AutoLayoutHelper.AttachToParentLeft(_innerView, _percentPrepView, 10);
                AutoLayoutHelper.SetHeight(_percentPrepView, 60);

                _percentPrepHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("PercentPrep")
                };

                _percentPrepView.InsertSubview(_percentPrepHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_percentPrepView, _percentPrepHeader, 5);
                AutoLayoutHelper.CenterControlHorizontally(_percentPrepView, _percentPrepHeader);

                _percentPrepRadialView = new RadialProgressView(progressType: RadialProgressViewStyle.Small) {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    MinValue = 0,
                    MaxValue = 100,
                };

                _percentPrepView.InsertSubview(_percentPrepRadialView, 0);
                AutoLayoutHelper.FollowControlVertically(_percentPrepView, _percentPrepHeader, _percentPrepRadialView, 2);
                AutoLayoutHelper.CenterControlHorizontally(_percentPrepView, _percentPrepRadialView);
                AutoLayoutHelper.AttachToParentBottom(_percentPrepView, _percentPrepRadialView, 10);

                _percentWorkView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_percentWorkView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _middleDivider, _percentWorkView, 4);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _percentPrepView, _percentWorkView, 10);
                AutoLayoutHelper.SetHeight(_percentWorkView, 60);

                _percentWorkHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("PercentWork")
                };

                _percentWorkView.InsertSubview(_percentWorkHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_percentWorkView, _percentWorkHeader, 5);
                AutoLayoutHelper.CenterControlHorizontally(_percentWorkView, _percentWorkHeader);

                _percentWorkRadialView = new RadialProgressView(progressType: RadialProgressViewStyle.Small)
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    MinValue = 0,
                    MaxValue = 100,
                };

                _percentWorkView.InsertSubview(_percentWorkRadialView, 0);
                AutoLayoutHelper.FollowControlVertically(_percentWorkView, _percentWorkHeader, _percentWorkRadialView, 2);
                AutoLayoutHelper.CenterControlHorizontally(_percentWorkView, _percentWorkRadialView);
                AutoLayoutHelper.AttachToParentBottom(_percentWorkView, _percentWorkRadialView, 10);

                _percentDeliveryView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_percentDeliveryView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _middleDivider, _percentDeliveryView, 4);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _percentWorkView, _percentDeliveryView, 10);
                AutoLayoutHelper.AttachToParentRight(_innerView, _percentDeliveryView, 10);
                AutoLayoutHelper.SetHeight(_percentDeliveryView, 60);

                _percentDeliveryHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("PercentDelivery")
                };

                _percentDeliveryView.InsertSubview(_percentDeliveryHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_percentDeliveryView, _percentDeliveryHeader, 5);
                AutoLayoutHelper.CenterControlHorizontally(_percentDeliveryView, _percentDeliveryHeader);

                _percentDeliveryRadialView = new RadialProgressView(progressType: RadialProgressViewStyle.Small)
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    MinValue = 0,
                    MaxValue = 100,
                };

                _percentDeliveryView.InsertSubview(_percentDeliveryRadialView, 0);
                AutoLayoutHelper.FollowControlVertically(_percentDeliveryView, _percentDeliveryHeader, _percentDeliveryRadialView, 2);
                AutoLayoutHelper.CenterControlHorizontally(_percentDeliveryView, _percentDeliveryRadialView);
                AutoLayoutHelper.AttachToParentBottom(_percentDeliveryView, _percentDeliveryRadialView, 10);

                //make all 3 views equal width and height
                AutoLayoutHelper.SetRelativeWidth(_innerView, _percentPrepView, _percentWorkView, 1);
                AutoLayoutHelper.SetRelativeWidth(_innerView, _percentPrepView, _percentDeliveryView, 1);

                AutoLayoutHelper.SetRelativeHeight(_innerView, _percentPrepView, _percentWorkView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _percentPrepView, _percentDeliveryView, 1);

                //draw divider between graphics and bottom views
                _bottomDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_bottomDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _percentPrepView, _bottomDivider, 10);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _bottomDivider, 4);
                AutoLayoutHelper.SetHeight(_bottomDivider, 1);

                _tasksInProgressView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksInProgressView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInProgressView, 1);
                AutoLayoutHelper.AttachToParentLeft(_innerView, _tasksInProgressView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInProgressView, 5);


                _tasksInProgressHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("TaskInProgress")
                };

                _tasksInProgressView.InsertSubview(_tasksInProgressHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksInProgressView, _tasksInProgressHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInProgressView, _tasksInProgressHeader);

                _tasksInProgress = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };
                _tasksInProgressView.InsertSubview(_tasksInProgress, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInProgressView, _tasksInProgress);
                AutoLayoutHelper.FollowControlVertically(_tasksInProgressView, _tasksInProgressHeader, _tasksInProgress, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksInProgressView,  _tasksInProgress, 4);

                _tasksInProgressSeperatorView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_tasksInProgressSeperatorView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInProgressSeperatorView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInProgressView, _tasksInProgressSeperatorView, 5);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInProgressSeperatorView, 5);

                AutoLayoutHelper.SetWidth(_tasksInProgressSeperatorView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _tasksInProgressView, _tasksInProgressSeperatorView, 1);

                _tasksInReviewView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksInReviewView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInReviewView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInProgressSeperatorView, _tasksInReviewView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInReviewView, 5);

                _tasksInReviewHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("TaskInReview")
                };

                _tasksInReviewView.InsertSubview(_tasksInReviewHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksInReviewView, _tasksInReviewHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInReviewView, _tasksInReviewHeader);

                _tasksInReview = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };

                _tasksInReviewView.InsertSubview(_tasksInReview, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInReviewView, _tasksInReview);
                AutoLayoutHelper.FollowControlVertically(_tasksInReviewView, _tasksInReviewHeader, _tasksInReview, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksInReviewView, _tasksInReview, 4);

                _tasksInReviewSeperatorView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_tasksInReviewSeperatorView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInReviewSeperatorView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInReviewView, _tasksInReviewSeperatorView, 5);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInReviewSeperatorView, 5);

                AutoLayoutHelper.SetWidth(_tasksInReviewSeperatorView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _tasksInProgressView, _tasksInReviewSeperatorView, 1);

                _tasksForReviewView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksForReviewView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksForReviewView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInReviewSeperatorView, _tasksForReviewView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksForReviewView, 5);

                _tasksForReviewHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("TaskForReview")
                };

                _tasksForReviewView.InsertSubview(_tasksForReviewHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksForReviewView, _tasksForReviewHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksForReviewView, _tasksForReviewHeader);

                _tasksForReview = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };

                _tasksForReviewView.InsertSubview(_tasksForReview, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksForReviewView, _tasksForReview);
                AutoLayoutHelper.FollowControlVertically(_tasksForReviewView, _tasksForReviewHeader, _tasksForReview, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksForReviewView, _tasksForReview, 4);

                _tasksForReviewSeperatorView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_tasksForReviewSeperatorView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksForReviewSeperatorView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksForReviewView, _tasksForReviewSeperatorView, 5);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksForReviewSeperatorView, 5);

                AutoLayoutHelper.SetWidth(_tasksForReviewSeperatorView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _tasksInProgressView, _tasksForReviewSeperatorView, 1);

                _tasksToDoView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksToDoView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksToDoView, 1);
                AutoLayoutHelper.AttachToParentRight(_innerView, _tasksToDoView, 10);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksForReviewSeperatorView, _tasksToDoView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksToDoView, 5);

                _tasksToDoHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text = _services.GetLocalizedString("TaskToDo")
                };

                _tasksToDoView.InsertSubview(_tasksToDoHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksToDoView, _tasksToDoHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksToDoView, _tasksToDoHeader);

                _tasksToDo = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };

                _tasksToDoView.InsertSubview(_tasksToDo, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksToDoView, _tasksToDo);
                AutoLayoutHelper.FollowControlVertically(_tasksToDoView, _tasksToDoHeader, _tasksToDo, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksToDoView, _tasksToDo, 4);

                    //set each task view to same width
                AutoLayoutHelper.SetRelativeWidth(_innerView, _tasksInProgressView, _tasksInReviewView, 1);
                AutoLayoutHelper.SetRelativeWidth(_innerView, _tasksInProgressView, _tasksForReviewView, 1);
                AutoLayoutHelper.SetRelativeWidth(_innerView, _tasksInProgressView, _tasksToDoView, 1);
            }

            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
            }

            _isCellResused = true;
        }
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (_innerView != null)
                {
                    _innerView.Dispose();
                    _innerView = null;
                }
                if(_jobName != null)
                {
                    _jobName.Dispose();
                    _jobName = null;
                }
                if(_companyName != null)
                {
                    _companyName.Dispose();
                    _companyName = null;
                }
                if(_officeLocation != null)
                {
                    _officeLocation.Dispose();
                    _officeLocation = null;
                }
                if (_dueDateView != null)
                {
                    _dueDateView.Dispose();
                    _dueDateView = null;
                }
                if(_jobStatusView != null)
                {
                    _jobStatusView.Dispose();
                    _jobStatusView = null;
                }
                if (_rightDueDateDivider != null)
                {
                    _rightDueDateDivider.Dispose();
                    _rightDueDateDivider = null;
                }
                if (_lightsContainerView != null)
                {
                    _lightsContainerView.Dispose();
                    _lightsContainerView = null;
                }
                if(_greenLightView != null)
                {
                    _greenLightView.Dispose();
                    _greenLightView = null;
                }
                if (_yellowLightView != null)
                {
                    _yellowLightView.Dispose();
                    _yellowLightView = null;
                }
                if (_redLightView != null)
                {
                    _redLightView.Dispose();
                    _redLightView = null;
                }
                if(_tasksInProgressView != null)
                {
                    _tasksInProgressView.Dispose();
                    _tasksInProgressView = null;
                }
                if (_tasksInProgressSeperatorView != null)
                {
                    _tasksInProgressSeperatorView.Dispose();
                    _tasksInProgressSeperatorView = null;
                }
                if (_tasksInReviewView != null)
                {
                    _tasksInReviewView.Dispose();
                    _tasksInReviewView = null;
                }
                if (_tasksInReviewSeperatorView != null)
                {
                    _tasksInReviewSeperatorView.Dispose();
                    _tasksInReviewSeperatorView = null;
                }
                if (_tasksForReviewView != null)
                {
                    _tasksForReviewView.Dispose();
                    _tasksForReviewView = null;
                }
                if (_tasksForReviewSeperatorView != null)
                {
                    _tasksForReviewSeperatorView.Dispose();
                    _tasksForReviewSeperatorView = null;
                }
                if (_tasksToDoView != null)
                {
                    _tasksToDoView.Dispose();
                    _tasksToDoView = null;
                }

                if (_tasksInProgressHeader != null)
                {
                    _tasksInProgressHeader.Dispose();
                    _tasksInProgressHeader = null;
                }
                if (_tasksInReviewHeader != null)
                {
                    _tasksInReviewHeader.Dispose();
                    _tasksInReviewHeader = null;
                }
                if (_tasksForReviewHeader != null)
                {
                    _tasksForReviewHeader.Dispose();
                    _tasksForReviewHeader = null;
                }
                if (_tasksToDoHeader != null)
                {
                    _tasksToDoHeader.Dispose();
                    _tasksToDoHeader = null;
                }
                if (_tasksInProgress != null)
                {
                    _tasksInProgress.Dispose();
                    _tasksInProgress = null;
                }
                if (_tasksInReview != null)
                {
                    _tasksInReview.Dispose();
                    _tasksInReview = null;
                }
                if (_tasksForReview != null)
                {
                    _tasksForReview.Dispose();
                    _tasksForReview = null;
                }
                if (_tasksToDo != null)
                {
                    _tasksToDo.Dispose();
                    _tasksToDo = null;
                }
                if (_topDivider != null)
                {
                    _topDivider.Dispose();
                    _topDivider = null;
                }
                if (_middleDivider != null)
                {
                    _middleDivider.Dispose();
                    _middleDivider = null;
                }
                if (_bottomDivider != null)
                {
                    _bottomDivider.Dispose();
                    _bottomDivider = null;
                }
                if (_percentPrepView != null)
                {
                    _percentPrepView.Dispose();
                    _percentPrepView = null;
                }
                if (_percentWorkView != null)
                {
                    _percentWorkView.Dispose();
                    _percentWorkView = null;
                }
                if (_percentDeliveryView != null)
                {
                    _percentDeliveryView.Dispose();
                    _percentDeliveryView = null;
                }
                if (_percentPrepHeader != null)
                {
                    _percentPrepHeader.Dispose();
                    _percentPrepHeader = null;
                }
                if (_percentWorkHeader != null)
                {
                    _percentWorkHeader.Dispose();
                    _percentWorkHeader = null;
                }
                if (_percentDeliveryHeader != null)
                {
                    _percentDeliveryHeader.Dispose();
                    _percentDeliveryHeader = null;
                }
                if (_percentPrepRadialView != null)
                {
                    _percentPrepRadialView.Dispose();
                    _percentPrepRadialView = null;
                }                
                if (_percentWorkRadialView != null)
                {
                    _percentWorkRadialView.Dispose();
                    _percentWorkRadialView = null;
                }
                if (_percentDeliveryRadialView != null)
                {
                    _percentDeliveryRadialView.Dispose();
                    _percentDeliveryRadialView = null;
                }
            }
            base.Dispose(disposing);
        }
        private void SetupUi()
        {
            try
            {
                //set the selection style
                this.SelectionStyle = UITableViewCellSelectionStyle.None;

                //set the background color of the cell to the same color of the tableView
                this.BackgroundColor = Helper.Theme.Color.C19;

                //set the border of the cell to be a little lighter, this will give it the look that the cell is floating in space by having the business card view's background color white
                //create a inner view that we change the background color and all content in.  This will make the content look like it's floating in the table view
                _innerView = new UIView
                {
                    BackgroundColor = Helper.Theme.Color.C1,
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Layer =
                    {
                        BorderColor = Helper.Theme.Color.C20.CGColor,
                        BorderWidth =                           1.0f,
                    }
                };

                //add the innerView into the contentview of the cell and attach it to the top, bottom, left, and right side of the cell
                this.ContentView.InsertSubview(_innerView, 0);
                AutoLayoutHelper.AttachToParentHorizontally(this.ContentView, _innerView, 0);
                AutoLayoutHelper.AttachToParentVertically(this.ContentView, _innerView, 4);

                //setup header labels
                _companyName = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font          = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor     = Helper.Theme.Color.C13,
                    LineBreakMode = UILineBreakMode.WordWrap,
                    Lines         = 0
                };

                _innerView.InsertSubview(_companyName, 0);
                //setup _companyName layout in innerView below _jobName
                AutoLayoutHelper.AttachToParentTop(_innerView, _companyName, 4);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _companyName, 10);

                _officeLocation = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font          = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor     = Helper.Theme.Color.C13,
                    LineBreakMode = UILineBreakMode.WordWrap,
                    Lines         = 0
                };

                _innerView.InsertSubview(_officeLocation, 0);
                //setup _officeLocation layout in innerView below _jobName
                AutoLayoutHelper.FollowControlVertically(_innerView, _companyName, _officeLocation, 2);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _officeLocation, 10);

                _jobName = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font          = Helper.Theme.Font.F2(Helper.Theme.Font.H4),
                    TextColor     = Helper.Theme.Color.C3,
                    LineBreakMode = UILineBreakMode.WordWrap,
                    Lines         = 0
                };

                _innerView.InsertSubview(_jobName, 0);
                //setup _jobName layout in innerview
                AutoLayoutHelper.FollowControlVertically(_innerView, _officeLocation, _jobName, 10);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _jobName, 10);

                _topDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_topDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _jobName, _topDivider, 6);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _topDivider, 4);
                AutoLayoutHelper.SetHeight(_topDivider, 1.0f);

                //setup the middle row of due date and status
                _dueDateView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_dueDateView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _topDivider, _dueDateView, 1);
                AutoLayoutHelper.AttachToParentLeft(_innerView, _dueDateView, 10);

                _dueDate = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font          = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor     = Helper.Theme.Color.C3,
                    LineBreakMode = UILineBreakMode.Clip
                };

                _dueDateView.InsertSubview(_dueDate, 0);
                AutoLayoutHelper.CenterControlHorizontally(_dueDateView, _dueDate);
                AutoLayoutHelper.CenterControlVertically(_dueDateView, _dueDate);

                //setup the divider between them to draw line to seperate data
                _rightDueDateDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_rightDueDateDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _topDivider, _rightDueDateDivider, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _dueDateView, _rightDueDateDivider, 10);

                AutoLayoutHelper.SetWidth(_rightDueDateDivider, 2);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _dueDateView, _rightDueDateDivider, 1);

                _jobStatusView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_jobStatusView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _topDivider, _jobStatusView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _rightDueDateDivider, _jobStatusView, 10);
                AutoLayoutHelper.AttachToParentRight(_innerView, _jobStatusView, 10);


                _lightsContainerView = new UIView()
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _jobStatusView.InsertSubview(_lightsContainerView, 0);
                AutoLayoutHelper.CenterControlHorizontally(_jobStatusView, _lightsContainerView);
                AutoLayoutHelper.CenterControlVertically(_jobStatusView, _lightsContainerView);

                //create stop lights for KPI
                _greenLightView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C8.ColorWithAlpha(0.5f),
                    Layer           = { CornerRadius = 10 }
                };

                _lightsContainerView.InsertSubview(_greenLightView, 0);
                AutoLayoutHelper.AttachToParentVertically(_lightsContainerView, _greenLightView, 5);
                AutoLayoutHelper.AttachToParentLeft(_lightsContainerView, _greenLightView, 5);

                AutoLayoutHelper.SetHeight(_greenLightView, 20);
                AutoLayoutHelper.SetWidth(_greenLightView, 20);

                _yellowLightView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C8.ColorWithAlpha(0.5f),
                    Layer           = { CornerRadius = 10 }
                };

                _lightsContainerView.InsertSubview(_yellowLightView, 0);

                AutoLayoutHelper.FollowControlHorizontally(_lightsContainerView, _greenLightView, _yellowLightView, 10);
                AutoLayoutHelper.AttachToParentVertically(_lightsContainerView, _yellowLightView, 5);

                AutoLayoutHelper.SetHeight(_yellowLightView, 20);
                AutoLayoutHelper.SetWidth(_yellowLightView, 20);

                _redLightView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C8.ColorWithAlpha(0.5f),
                    Layer           = { CornerRadius = 10 }
                };

                _lightsContainerView.InsertSubview(_redLightView, 0);
                AutoLayoutHelper.FollowControlHorizontally(_lightsContainerView, _yellowLightView, _redLightView, 10);
                AutoLayoutHelper.AttachToParentRight(_lightsContainerView, _redLightView, 5);
                AutoLayoutHelper.AttachToParentVertically(_jobStatusView, _redLightView, 5);

                AutoLayoutHelper.SetHeight(_redLightView, 20);
                AutoLayoutHelper.SetWidth(_redLightView, 20);

                //set the job status view and the due date view to be the same width
                AutoLayoutHelper.SetRelativeWidth(_innerView, _jobStatusView, _dueDateView, 1);

                //set the due date view and job status view to the same height
                AutoLayoutHelper.SetRelativeHeight(_innerView, _jobStatusView, _dueDateView, 1);

                //draw divider between status and graphics
                _middleDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_middleDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _dueDateView, _middleDivider, 1);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _middleDivider, 4);
                AutoLayoutHelper.SetHeight(_middleDivider, 1);


                _percentPrepView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_percentPrepView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _middleDivider, _percentPrepView, 4);
                AutoLayoutHelper.AttachToParentLeft(_innerView, _percentPrepView, 10);
                AutoLayoutHelper.SetHeight(_percentPrepView, 60);

                _percentPrepHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("PercentPrep")
                };

                _percentPrepView.InsertSubview(_percentPrepHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_percentPrepView, _percentPrepHeader, 5);
                AutoLayoutHelper.CenterControlHorizontally(_percentPrepView, _percentPrepHeader);

                _percentPrepRadialView = new RadialProgressView(progressType: RadialProgressViewStyle.Small)
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    MinValue = 0,
                    MaxValue = 100,
                };

                _percentPrepView.InsertSubview(_percentPrepRadialView, 0);
                AutoLayoutHelper.FollowControlVertically(_percentPrepView, _percentPrepHeader, _percentPrepRadialView, 2);
                AutoLayoutHelper.CenterControlHorizontally(_percentPrepView, _percentPrepRadialView);
                AutoLayoutHelper.AttachToParentBottom(_percentPrepView, _percentPrepRadialView, 10);

                _percentWorkView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_percentWorkView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _middleDivider, _percentWorkView, 4);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _percentPrepView, _percentWorkView, 10);
                AutoLayoutHelper.SetHeight(_percentWorkView, 60);

                _percentWorkHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("PercentWork")
                };

                _percentWorkView.InsertSubview(_percentWorkHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_percentWorkView, _percentWorkHeader, 5);
                AutoLayoutHelper.CenterControlHorizontally(_percentWorkView, _percentWorkHeader);

                _percentWorkRadialView = new RadialProgressView(progressType: RadialProgressViewStyle.Small)
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    MinValue = 0,
                    MaxValue = 100,
                };

                _percentWorkView.InsertSubview(_percentWorkRadialView, 0);
                AutoLayoutHelper.FollowControlVertically(_percentWorkView, _percentWorkHeader, _percentWorkRadialView, 2);
                AutoLayoutHelper.CenterControlHorizontally(_percentWorkView, _percentWorkRadialView);
                AutoLayoutHelper.AttachToParentBottom(_percentWorkView, _percentWorkRadialView, 10);

                _percentDeliveryView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_percentDeliveryView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _middleDivider, _percentDeliveryView, 4);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _percentWorkView, _percentDeliveryView, 10);
                AutoLayoutHelper.AttachToParentRight(_innerView, _percentDeliveryView, 10);
                AutoLayoutHelper.SetHeight(_percentDeliveryView, 60);

                _percentDeliveryHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("PercentDelivery")
                };

                _percentDeliveryView.InsertSubview(_percentDeliveryHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_percentDeliveryView, _percentDeliveryHeader, 5);
                AutoLayoutHelper.CenterControlHorizontally(_percentDeliveryView, _percentDeliveryHeader);

                _percentDeliveryRadialView = new RadialProgressView(progressType: RadialProgressViewStyle.Small)
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    MinValue = 0,
                    MaxValue = 100,
                };

                _percentDeliveryView.InsertSubview(_percentDeliveryRadialView, 0);
                AutoLayoutHelper.FollowControlVertically(_percentDeliveryView, _percentDeliveryHeader, _percentDeliveryRadialView, 2);
                AutoLayoutHelper.CenterControlHorizontally(_percentDeliveryView, _percentDeliveryRadialView);
                AutoLayoutHelper.AttachToParentBottom(_percentDeliveryView, _percentDeliveryRadialView, 10);

                //make all 3 views equal width and height
                AutoLayoutHelper.SetRelativeWidth(_innerView, _percentPrepView, _percentWorkView, 1);
                AutoLayoutHelper.SetRelativeWidth(_innerView, _percentPrepView, _percentDeliveryView, 1);

                AutoLayoutHelper.SetRelativeHeight(_innerView, _percentPrepView, _percentWorkView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _percentPrepView, _percentDeliveryView, 1);

                //draw divider between graphics and bottom views
                _bottomDivider = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_bottomDivider, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _percentPrepView, _bottomDivider, 10);
                AutoLayoutHelper.AttachToParentHorizontally(_innerView, _bottomDivider, 4);
                AutoLayoutHelper.SetHeight(_bottomDivider, 1);

                _tasksInProgressView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksInProgressView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInProgressView, 1);
                AutoLayoutHelper.AttachToParentLeft(_innerView, _tasksInProgressView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInProgressView, 5);


                _tasksInProgressHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("TaskInProgress")
                };

                _tasksInProgressView.InsertSubview(_tasksInProgressHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksInProgressView, _tasksInProgressHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInProgressView, _tasksInProgressHeader);

                _tasksInProgress = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };
                _tasksInProgressView.InsertSubview(_tasksInProgress, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInProgressView, _tasksInProgress);
                AutoLayoutHelper.FollowControlVertically(_tasksInProgressView, _tasksInProgressHeader, _tasksInProgress, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksInProgressView, _tasksInProgress, 4);

                _tasksInProgressSeperatorView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_tasksInProgressSeperatorView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInProgressSeperatorView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInProgressView, _tasksInProgressSeperatorView, 5);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInProgressSeperatorView, 5);

                AutoLayoutHelper.SetWidth(_tasksInProgressSeperatorView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _tasksInProgressView, _tasksInProgressSeperatorView, 1);

                _tasksInReviewView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksInReviewView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInReviewView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInProgressSeperatorView, _tasksInReviewView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInReviewView, 5);

                _tasksInReviewHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("TaskInReview")
                };

                _tasksInReviewView.InsertSubview(_tasksInReviewHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksInReviewView, _tasksInReviewHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInReviewView, _tasksInReviewHeader);

                _tasksInReview = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };

                _tasksInReviewView.InsertSubview(_tasksInReview, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksInReviewView, _tasksInReview);
                AutoLayoutHelper.FollowControlVertically(_tasksInReviewView, _tasksInReviewHeader, _tasksInReview, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksInReviewView, _tasksInReview, 4);

                _tasksInReviewSeperatorView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_tasksInReviewSeperatorView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksInReviewSeperatorView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInReviewView, _tasksInReviewSeperatorView, 5);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksInReviewSeperatorView, 5);

                AutoLayoutHelper.SetWidth(_tasksInReviewSeperatorView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _tasksInProgressView, _tasksInReviewSeperatorView, 1);

                _tasksForReviewView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksForReviewView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksForReviewView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksInReviewSeperatorView, _tasksForReviewView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksForReviewView, 5);

                _tasksForReviewHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("TaskForReview")
                };

                _tasksForReviewView.InsertSubview(_tasksForReviewHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksForReviewView, _tasksForReviewHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksForReviewView, _tasksForReviewHeader);

                _tasksForReview = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };

                _tasksForReviewView.InsertSubview(_tasksForReview, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksForReviewView, _tasksForReview);
                AutoLayoutHelper.FollowControlVertically(_tasksForReviewView, _tasksForReviewHeader, _tasksForReview, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksForReviewView, _tasksForReview, 4);

                _tasksForReviewSeperatorView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    BackgroundColor = Helper.Theme.Color.C19
                };

                _innerView.InsertSubview(_tasksForReviewSeperatorView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksForReviewSeperatorView, 1);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksForReviewView, _tasksForReviewSeperatorView, 5);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksForReviewSeperatorView, 5);

                AutoLayoutHelper.SetWidth(_tasksForReviewSeperatorView, 1);
                AutoLayoutHelper.SetRelativeHeight(_innerView, _tasksInProgressView, _tasksForReviewSeperatorView, 1);

                _tasksToDoView = new UIView
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                };

                _innerView.InsertSubview(_tasksToDoView, 0);
                AutoLayoutHelper.FollowControlVertically(_innerView, _bottomDivider, _tasksToDoView, 1);
                AutoLayoutHelper.AttachToParentRight(_innerView, _tasksToDoView, 10);
                AutoLayoutHelper.FollowControlHorizontally(_innerView, _tasksForReviewSeperatorView, _tasksToDoView, 10);
                AutoLayoutHelper.AttachToParentBottom(_innerView, _tasksToDoView, 5);

                _tasksToDoHeader = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C3,
                    Text      = _services.GetLocalizedString("TaskToDo")
                };

                _tasksToDoView.InsertSubview(_tasksToDoHeader, 0);
                AutoLayoutHelper.AttachToParentTop(_tasksToDoView, _tasksToDoHeader, 2);
                AutoLayoutHelper.CenterControlHorizontally(_tasksToDoView, _tasksToDoHeader);

                _tasksToDo = new UILabel
                {
                    TranslatesAutoresizingMaskIntoConstraints = false,
                    Font      = Helper.Theme.Font.F2(Helper.Theme.Font.H6),
                    TextColor = Helper.Theme.Color.C13
                };

                _tasksToDoView.InsertSubview(_tasksToDo, 0);
                AutoLayoutHelper.CenterControlHorizontally(_tasksToDoView, _tasksToDo);
                AutoLayoutHelper.FollowControlVertically(_tasksToDoView, _tasksToDoHeader, _tasksToDo, 4);
                AutoLayoutHelper.AttachToParentBottom(_tasksToDoView, _tasksToDo, 4);

                //set each task view to same width
                AutoLayoutHelper.SetRelativeWidth(_innerView, _tasksInProgressView, _tasksInReviewView, 1);
                AutoLayoutHelper.SetRelativeWidth(_innerView, _tasksInProgressView, _tasksForReviewView, 1);
                AutoLayoutHelper.SetRelativeWidth(_innerView, _tasksInProgressView, _tasksToDoView, 1);
            }

            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
            }

            _isCellResused = true;
        }