public UITableSource_IBUCalcTableView(UITableViewController view)
        {
            MessagingCenter.Subscribe <IBUAddHopPage, Hops> (this, "AddNativeHop", (sender, arg) => {
                IBUTableRowDataModel addedModel = new IBUTableRowDataModel {
                    SelectedHop = arg as Hops,
                    AA          = ((arg.AAHigh + arg.AALow) / 2).ToString(),
                    ounces      = "0",
                    BoilTime    = "0"
                };

                data.Add(addedModel);
            });

            MessagingCenter.Subscribe <UITableViewController_IBUCalculatorPage, HopsToBeCalculated> (this, "CalculateIBU", (sender, arg) => {
                ibuCalculator.CalculateIBU(arg, data);
            });
        }
Example #2
0
        public HopCell(IBUTableRowDataModel hop)
        {
            hopName = new UILabel {
                Text      = hop.SelectedHop.HopName,
                TextColor = UIColor.White,
            };

            aaPercentage = new UITextView {
                Text            = ((hop.SelectedHop.AAHigh + hop.SelectedHop.AALow) / 2).ToString(),
                BackgroundColor = UIColor.LightGray,
                TextAlignment   = UITextAlignment.Center,
                Font            = UIFont.SystemFontOfSize(20),
                TextColor       = UIColor.White,
                KeyboardType    = UIKeyboardType.NumberPad,
                Editable        = true
            };

            ounces = new UITextView {
                Text            = "0",
                BackgroundColor = UIColor.LightGray,
                TextAlignment   = UITextAlignment.Center,
                Font            = UIFont.SystemFontOfSize(20),
                TextColor       = UIColor.White,
                KeyboardType    = UIKeyboardType.NumberPad,
                Editable        = true
            };

            boilTime = new UITextView {
                Text            = "0",
                BackgroundColor = UIColor.LightGray,
                TextAlignment   = UITextAlignment.Center,
                Font            = UIFont.SystemFontOfSize(20),
                TextColor       = UIColor.White,
                KeyboardType    = UIKeyboardType.NumberPad,
                Editable        = true,
            };

            ContentView.AddSubview(hopName);
            ContentView.Add(hopName);
            ContentView.Add(aaPercentage);
            ContentView.Add(ounces);
            ContentView.Add(boilTime);

            hopName.LineBreakMode = UILineBreakMode.WordWrap;
            hopName.Lines         = 2;

            aaPercentage.Layer.CornerRadius = 10.0f;
            ounces.Layer.CornerRadius       = 10.0f;
            boilTime.Layer.CornerRadius     = 10.0f;

            aaPercentage.Changed += (object sender, EventArgs e) => {
                hop.AA = aaPercentage.Text;
            };

            ounces.Changed += (object sender, EventArgs e) => {
                hop.ounces = ounces.Text;
            };

            boilTime.Changed += (object sender, EventArgs e) => {
                hop.BoilTime = boilTime.Text;
            };

            aaPercentage.Started += (object sender, EventArgs e) => {
                HandleTapIfZero(aaPercentage);
            };
            aaPercentage.Ended += (object sender, EventArgs e) => {
                HandleDismissIfBlank(aaPercentage);
            };
            ounces.Started += (object sender, EventArgs e) => {
                HandleTapIfZero(ounces);
            };
            ounces.Ended += (object sender, EventArgs e) => {
                HandleDismissIfBlank(ounces);
            };
            boilTime.Started += (object sender, EventArgs e) => {
                HandleTapIfZero(boilTime);
            };
            boilTime.Ended += (object sender, EventArgs e) => {
                HandleDismissIfBlank(boilTime);
            };
        }