示例#1
0
        public virtual DroidVariable GetWidget(string widgetType, string widgetName, string initArg,
                                               int width, int height)
        {
            UIVariable.UIType type = UIVariable.UIType.NONE;
            View widget            = null;

            switch (widgetType)
            {
            case "View":
                type   = UIVariable.UIType.VIEW;
                widget = new View(MainActivity.TheView);
                break;

            case "Button":
                type   = UIVariable.UIType.BUTTON;
                widget = new Button(MainActivity.TheView);
                ((Button)widget).SetTextColor(Color.Black);
                ((Button)widget).Text = initArg;
                UtilsDroid.AddViewBorder(widget, Color.Black);
                break;

            case "TextView":
                type   = UIVariable.UIType.TEXT_VIEW;
                widget = new TextView(MainActivity.TheView);
                ((TextView)widget).SetTextColor(Color.Black);
                ((TextView)widget).Text                       = initArg;
                ((TextView)widget).Gravity                    = GravityFlags.Top | GravityFlags.Left;
                ((TextView)widget).TextAlignment              = TextAlignment.TextStart;
                ((TextView)widget).MovementMethod             = new ScrollingMovementMethod();
                ((TextView)widget).VerticalScrollBarEnabled   = true;
                ((TextView)widget).HorizontalScrollBarEnabled = true;
                //((TextView)widget).SetMaxLines(40);
                //((TextView)widget).ScrollBarStyle = ScrollbarStyles.OutsideOverlay;
                //((TextView)widget).ScrollBarSize = 2;
                break;

            case "Label":
                type   = UIVariable.UIType.LABEL;
                widget = new TextView(MainActivity.TheView);
                ((TextView)widget).SetTextColor(Color.Black);
                ((TextView)widget).Text    = initArg;
                ((TextView)widget).Gravity = GravityFlags.CenterVertical | GravityFlags.Left;
                break;

            case "TextEdit":
                type   = UIVariable.UIType.TEXT_FIELD;
                widget = new EditText(MainActivity.TheView);
                ((EditText)widget).SetTextColor(Color.Black);
                ((EditText)widget).SetBackgroundColor(Color.White);
                ((EditText)widget).SetTextIsSelectable(true);
                ((EditText)widget).Focusable     = true;
                ((EditText)widget).LongClickable = true;
                ((EditText)widget).Hint          = initArg;
                break;

            case "TextEditView":
                type   = UIVariable.UIType.EDIT_VIEW;
                widget = new EditText(MainActivity.TheView);
                ((EditText)widget).SetTextColor(Color.Black);
                ((EditText)widget).SetBackgroundColor(Color.White);
                ((EditText)widget).Hint                       = initArg;
                ((EditText)widget).Gravity                    = GravityFlags.Top | GravityFlags.Left;
                ((EditText)widget).TextAlignment              = TextAlignment.TextStart;
                ((EditText)widget).MovementMethod             = new ScrollingMovementMethod();
                ((EditText)widget).VerticalScrollBarEnabled   = true;
                ((EditText)widget).HorizontalScrollBarEnabled = true;
                ((EditText)widget).SetTextIsSelectable(true);
                ((EditText)widget).Focusable     = true;
                ((EditText)widget).LongClickable = true;
                break;

            case "ImageView":
                type   = UIVariable.UIType.IMAGE_VIEW;
                widget = new ImageView(MainActivity.TheView);
                if (!string.IsNullOrWhiteSpace(initArg))
                {
                    int resourceID = MainActivity.String2Pic(initArg);
                    widget.SetBackgroundResource(resourceID);
                }
                break;

            case "Combobox":
                type   = UIVariable.UIType.COMBOBOX;
                widget = new Spinner(MainActivity.TheView);
                ((Spinner)widget).DescendantFocusability = DescendantFocusability.BlockDescendants;
                break;

            case "TypePicker":
                type   = UIVariable.UIType.PICKER_VIEW;
                widget = new NumberPicker(MainActivity.TheView);
                // Don't show the cursor on the picker:
                ((NumberPicker)widget).DescendantFocusability = DescendantFocusability.BlockDescendants;
                break;

            case "Picker":
                type   = UIVariable.UIType.PICKER_IMAGES;
                widget = new Spinner(MainActivity.TheView);
                // Don't show the cursor on the picker:
                ((Spinner)widget).DescendantFocusability = DescendantFocusability.BlockDescendants;
                break;

            case "ListView":
                type   = UIVariable.UIType.LIST_VIEW;
                widget = new ListView(MainActivity.TheView);
                // Don't show the cursor on the list view:
                ((ListView)widget).DescendantFocusability = DescendantFocusability.BlockDescendants;
                break;

            case "Switch":
                type   = UIVariable.UIType.SWITCH;
                widget = new Switch(MainActivity.TheView);
                break;

            case "SegmentedControl":
                type   = UIVariable.UIType.SEGMENTED;
                widget = new Switch(MainActivity.TheView);
                //widget = new Info.Hoang8f.Android.Segmented.SegmentedGroup(MainActivity.TheView);
                break;

            case "Slider":
                type   = UIVariable.UIType.SLIDER;
                widget = new SeekBar(MainActivity.TheView);
                break;

            case "Stepper":
                type   = UIVariable.UIType.STEPPER;
                widget = new View(MainActivity.TheView);
                break;
            }

            DroidVariable widgetFunc = new DroidVariable(type, widgetName, widget);

            widgetFunc.AddAction(widgetName, widgetName + "_click");

            SetValues(widgetFunc, initArg);
            return(widgetFunc);
        }
示例#2
0
        public virtual iOSVariable GetWidget(string widgetType, string widgetName, string initArg, CGRect rect)
        {
            UIVariable.UIType type       = UIVariable.UIType.NONE;
            iOSVariable       widgetFunc = null;
            UIView            widget     = null;

            switch (widgetType)
            {
            case "View":
                type   = UIVariable.UIType.VIEW;
                widget = new UIView(rect);
                break;

            case "Button":
                type   = UIVariable.UIType.BUTTON;
                widget = new UIButton(rect);
                //widget = new UIButton(UIButtonType.System);
                ((UIButton)widget).SetTitleColor(UIColor.Black, UIControlState.Normal);
                ((UIButton)widget).SetTitle(initArg, UIControlState.Normal);
                AddBorderFunction.AddBorder(widget);
                break;

            case "Label":
                type   = UIVariable.UIType.LABEL;
                widget = new UILabel(rect);
                ((UILabel)widget).TextColor = UIColor.Black;
                ((UILabel)widget).Text      = initArg;
                break;

            case "TextEdit":
                type   = UIVariable.UIType.TEXT_FIELD;
                widget = new UITextField(rect);
                ((UITextField)widget).TextColor   = UIColor.Black;
                ((UITextField)widget).Placeholder = initArg;
                MakeBottomBorder(widget, (int)rect.Width, (int)rect.Height);
                break;

            case "TextEditView":
                type   = UIVariable.UIType.TEXT_VIEW;
                widget = new UITextView(rect);
                ((UITextView)widget).TextColor = UIColor.Black;
                AddBorderFunction.AddBorder(widget);
                break;

            case "TextView":
                type   = UIVariable.UIType.TEXT_VIEW;
                widget = new UITextView(rect);
                ((UITextView)widget).TextColor = UIColor.Black;
                ((UITextView)widget).Editable  = false;
                AddBorderFunction.AddBorder(widget);
                break;

            case "ImageView":
                type   = UIVariable.UIType.IMAGE_VIEW;
                widget = new UIImageView(rect);
                if (!string.IsNullOrWhiteSpace(initArg))
                {
                    UIImage img = UtilsiOS.LoadImage(initArg);
                    ((UIImageView)widget).Image = img;
                }
                break;

            case "Combobox":
                type       = UIVariable.UIType.COMBOBOX;
                widgetFunc = new iOSVariable(type, widgetName, widget);
                widgetFunc.CreateCombobox(rect, initArg);
                break;

            case "TypePicker":
                type   = UIVariable.UIType.PICKER_VIEW;
                widget = new UIPickerView(rect);
                ((UIPickerView)widget).AutosizesSubviews = true;
                break;

            case "Picker":
                type   = UIVariable.UIType.PICKER_IMAGES;
                widget = new UIPickerView(rect);
                ((UIPickerView)widget).AutosizesSubviews = true;
                break;

            case "ListView":
                type   = UIVariable.UIType.LIST_VIEW;
                widget = new UITableView(rect);
                ((UITableView)widget).AutosizesSubviews = true;
                ((UITableView)widget).AutoresizingMask  = UIViewAutoresizing.FlexibleBottomMargin;
                ((UITableView)widget).BackgroundColor   = UIColor.Clear;
                break;

            case "Switch":
                type   = UIVariable.UIType.SWITCH;
                widget = new UISwitch(rect);
                break;

            case "Slider":
                type   = UIVariable.UIType.SLIDER;
                widget = new UISlider(rect);
                break;

            case "Stepper":
                type       = UIVariable.UIType.STEPPER;
                widgetFunc = new iOSVariable(type, widgetName, widget);
                widgetFunc.CreateStepper(rect, initArg);
                break;

            case "SegmentedControl":
                type   = UIVariable.UIType.SEGMENTED;
                widget = new UISegmentedControl(rect);
                break;
                //default:
                //  type = UIVariable.UIType.VIEW;
                //  widget = new UIView(rect);
                //  break;
            }
            SetOptionsFunction.SetMultiline(widget);

            if (widgetFunc == null)
            {
                widgetFunc = new iOSVariable(type, widgetName, widget);
            }
            //iOSVariable widgetFunc = new iOSVariable(type, widgetName, widget);
            SetValues(widgetFunc, initArg);

            return(widgetFunc);
        }