private void ShowNoHeaderDialog(IHolder holder, GravityFlags gravity, BaseAdapter adapter,
                                        OnClickListener clickListener, OnItemClickListener itemClickListener,
                                        OnDismissListener dismissListener, OnCancelListener cancelListener,
                                        bool expanded)
        {
            DialogPlus dialog = DialogPlus.NewDialog(this)
                                .SetContentHolder(holder)
                                .SetFooter(Resource.Layout.footer)
                                .SetCancelable(true)
                                .SetGravity((int)gravity)
                                .SetAdapter(adapter)
                                .SetOnClickListener(clickListener)
                                .SetOnItemClickListener(new OnItemClickListener()
            {
                ItemClick = (p0, p1, p2, p3) =>
                {
                    Toast.MakeText(this, "DialogPlus: " + " onItemClick() called with: " + "item = [" +
                                   p1 + "], position = [" + p3 + "]", ToastLength.Short).Show();
                }
            })
                                .SetOnDismissListener(dismissListener)
                                .SetOnCancelListener(cancelListener)
                                .SetExpanded(expanded)
                                .Create();

            dialog.Show();
        }
        private void ShowCompleteDialog(IHolder holder, GravityFlags gravity, BaseAdapter adapter,
                                        IOnClickListener clickListener, OnItemClickListener itemClickListener,
                                        OnDismissListener dismissListener, OnCancelListener cancelListener,
                                        bool expanded)
        {
            DialogPlus dialog = DialogPlus.NewDialog(this)
                                .SetContentHolder(holder)
                                .SetHeader(Resource.Layout.header)
                                .SetFooter(Resource.Layout.footer)
                                .SetCancelable(true)
                                .SetGravity((int)gravity)
                                .SetAdapter(adapter)
                                .SetOnClickListener(clickListener)
                                .SetOnItemClickListener(new OnItemClickListener()
            {
                ItemClick = (p0, p1, p2, p3) =>
                {
                    Toast.MakeText(this, "DialogPlus: " + " onItemClick() called with: " + "item = [" +
                                   p1 + "], position = [" + p3 + "]", ToastLength.Short).Show();
                }
            })
                                .SetOnDismissListener(dismissListener)
                                .SetExpanded(expanded)
                                //.SetContentWidth(800)
                                .SetContentHeight(ViewGroup.LayoutParams.WrapContent)
                                .SetOnCancelListener(cancelListener)
                                .SetOverlayBackgroundResource(Android.Resource.Color.Transparent)
                                //.SetContentBackgroundResource(R.drawable.corner_background)
                                //.SetOutMostMargin(0, 100, 0, 0)
                                .Create();

            dialog.Show();
        }
Exemple #3
0
        private void UpdateTextAlighnment(EntryExtended entryEx)
        {
            try {
                GravityFlags gravity = DefaultGravity;

                switch (entryEx.HorizontalTextAlignment)
                {
                case Xamarin.Forms.TextAlignment.Start:
                    gravity |= GravityFlags.Start;
                    break;

                case Xamarin.Forms.TextAlignment.Center:
                    gravity |= GravityFlags.CenterHorizontal;
                    break;

                case Xamarin.Forms.TextAlignment.End:
                    gravity |= GravityFlags.End;
                    break;
                }

                Control.Gravity = gravity;
            }
            catch (Exception ex) {
                Debugger.Break();
                System.Diagnostics.Debug.WriteLine($"ERROR: {ex.Message}");
            }
        }
Exemple #4
0
 public WheelTextAdapter(Context mContext, List <MenuItemData> menuItems)
 {
     this.mContext  = mContext;
     this.menuItems = menuItems;
     layoutInflater = LayoutInflater.FromContext(mContext);
     mGravity       = GravityFlags.Center;
 }
Exemple #5
0
 public Page(int titleRes, int textRes, int iconRes, GravityFlags gravity)
 {
     this.TitleRes    = titleRes;
     this.TextRes     = textRes;
     this.IconRes     = iconRes;
     this.CardGravity = gravity;
 }
			public Page (int titleRes, int textRes, int iconRes, GravityFlags gravity) 
			{
				this.TitleRes = titleRes;
				this.TextRes = textRes;
				this.IconRes = iconRes;
				this.CardGravity = gravity;
			}
        void UpdateTextAlighnment(EntryExtended entryEx)
        {
            try {
                GravityFlags gravity = DefaultGravity;

                switch (entryEx.HorizontalTextAlignment)
                {
                case Xamarin.Forms.TextAlignment.Start:
                    gravity |= GravityFlags.Start;
                    break;

                case Xamarin.Forms.TextAlignment.Center:
                    gravity |= GravityFlags.CenterHorizontal;
                    break;

                case Xamarin.Forms.TextAlignment.End:
                    gravity |= GravityFlags.End;
                    break;
                }

                Control.Gravity = gravity;
            } catch (Exception ex) {
                Crashes.TrackError(ex);
                Debugger.Break();
            }
        }
Exemple #8
0
        public ExpandHelper(Context context, Callback callback, int small, int large)
        {
            this.smallSize      = small;
            this.maximumStretch = Math.Max(smallSize, 1) * StretchInterval;
            this.largeSize      = large;
            this.context        = context;
            this.callback       = callback;
            this.scaler         = new ViewScaler();
            this.gravity        = GravityFlags.Top;

            //this.scaleAnimation = ObjectAnimator.OfFloat (scaler, "Height", 0f);
            this.scaleAnimation         = ValueAnimator.OfFloat(0f);
            this.scaleAnimation.Update += (sender, e) => scaler.Height = (float)e.Animation.AnimatedValue;
            this.scaleAnimation.SetDuration(ExpandDuration);

            AnimatorListenerAdapter glowVisibilityController = new AnimatorListener();

            glowTopAnimation = ObjectAnimator.OfFloat(null, "alpha", 0f);
            glowTopAnimation.AddListener(glowVisibilityController);
            glowBottomAnimation = ObjectAnimator.OfFloat(null, "alpha", 0f);
            glowBottomAnimation.AddListener(glowVisibilityController);
            glowAnimationSet = new AnimatorSet();
            glowAnimationSet.Play(glowTopAnimation).With(glowBottomAnimation);
            glowAnimationSet.SetDuration(GlowDuration);

            detector = new DoubleSwipeDetector(context, new GestureDetector(this));
        }
        /**
         * Instantiates a new holo circular progress bar.
         *
         * @param context  the context
         * @param attrs    the attrs
         * @param defStyle the def style
         */
        public HoloCircularProgressBar(Context context, IAttributeSet Attrs, int DefStyle) : base(context, Attrs, DefStyle)
        {
            // load the styled attributes and set their properties
            TypedArray attributes = context.ObtainStyledAttributes(Attrs, Resource.Styleable.HoloCircularProgressBar, DefStyle, 0);

            if (attributes != null)
            {
                try {
                    SetProgressColor(attributes.GetColor(Resource.Styleable.HoloCircularProgressBar_progress_color, Color.Cyan));
                    SetProgressBackgroundColor(attributes.GetColor(Resource.Styleable.HoloCircularProgressBar_progress_background_color, Color.Green));
                    SetProgress(attributes.GetFloat(Resource.Styleable.HoloCircularProgressBar_progress, 0.0f));
                    SetMarkerProgress(attributes.GetFloat(Resource.Styleable.HoloCircularProgressBar_marker_progress, 0.0f));
                    SetWheelSize((int)attributes.GetDimension(Resource.Styleable.HoloCircularProgressBar_stroke_width, 10));
                    SetThumbEnabled(attributes.GetBoolean(Resource.Styleable.HoloCircularProgressBar_thumb_visible, true));
                    SetMarkerEnabled(attributes.GetBoolean(Resource.Styleable.HoloCircularProgressBar_marker_visible, true));

                    _gravity = (GravityFlags)attributes.GetInt(Resource.Styleable.HoloCircularProgressBar_android_gravity, (int)GravityFlags.Center);
                } finally {
                    // make sure recycle is always called.
                    attributes.Recycle();
                }
            }

            _thumbRadius = _circleStrokeWidth * 2;

            UpdateBackgroundColor();

            UpdateMarkerColor();

            UpdateProgressColor();

            // the view has now all properties and can be drawn
            _isInitializing = false;
        }
Exemple #10
0
 internal GravityCircle(GravityFlags caps, double a, double f, double lat, double h,
                        double Z, double P, double cphi, double sphi,
                        double amodel, double GMmodel,
                        double dzonal0, double corrmult,
                        double gamma0, double gamma, double frot,
                        CircularEngine gravitational,
                        CircularEngine disturbing,
                        CircularEngine correction)
 {
     _caps          = caps;
     _a             = a;
     _f             = f;
     _lat           = LatFix(lat);
     _h             = h;
     _Z             = Z;
     _Px            = P;
     _invR          = 1 / Hypot(_Px, _Z);
     _cpsi          = _Px * _invR;
     _spsi          = _Z * _invR;
     _cphi          = cphi;
     _sphi          = sphi;
     _amodel        = amodel;
     _GMmodel       = GMmodel;
     _dzonal0       = dzonal0;
     _corrmult      = corrmult;
     _gamma0        = gamma0;
     _gamma         = gamma;
     _frot          = frot;
     _gravitational = gravitational;
     _disturbing    = disturbing;
     _correction    = correction;
 }
Exemple #11
0
        protected override void OnDraw(Android.Graphics.Canvas canvas)
        {
            try
            {
                base.OnDraw(canvas);
                if (buttonDrawable == null)
                {
                    return;
                }
                //FirstLog.Debug(FirstApplication.ApplicationName + "Log", "FirstCheckBox.OnDraw..");

                buttonDrawable.SetState(GetDrawableState());

                GravityFlags verticalGravity   = Gravity & GravityFlags.CenterVertical;
                GravityFlags horizontalGravity = Gravity & GravityFlags.CenterHorizontal;


                if (buttonDrawable != null)
                {
                    int      size = Math.Min(this.Width, this.Height);
                    Drawable currentButtonDrawable = buttonDrawable.Current;
                    if (currentButtonDrawable.IntrinsicWidth != size || currentButtonDrawable.IntrinsicHeight != size)
                    {
                        //FirstLog.Debug(FirstApplication.ApplicationName + "Log", "FirstCheckBox.OnDraw buttonDrawable not null size[" + currentButtonDrawable.IntrinsicWidth + "," + currentButtonDrawable.IntrinsicHeight + "] [" + this.Width + "," + this.Height + "]");
                        currentButtonDrawable = ResizeBitmap(DrawableToBitmap(currentButtonDrawable), size, size);
                    }

                    int height = currentButtonDrawable.IntrinsicHeight;
                    int width  = currentButtonDrawable.IntrinsicWidth;
                    int y      = 0;

                    //switch (gravi)
                    //{
                    //    case Gravity:
                    //        y = getHeight() - height;
                    //        break;
                    //    case Gravity.CENTER_VERTICAL:
                    y = (this.Height - height) / 2;
                    //        break;
                    //}

                    //int size = Math.Min(this.Width, this.Height);
                    //buttonDrawable = ResizeBitmap(DrawableToBitmap(buttonDrawable.Current), size, size);



                    int buttonWidth = currentButtonDrawable.IntrinsicWidth;
                    int buttonLeft  = Width - buttonWidth;

                    currentButtonDrawable.SetBounds(buttonLeft, y, buttonLeft + buttonWidth, y + height);
                    currentButtonDrawable.Draw(canvas);
                }
                //else
                //    FirstLog.Warn(FirstApplication.ApplicationName, "FirstCheckBox.OnDraw buttonDrawable is null");
            }
            catch (Exception ex)
            {
                //FirstLog.Error(FirstApplication.ApplicationName + "Log", "FirstCheckBox.OnDraw: " + ex.Message);
            }
        }
Exemple #12
0
        public static void Show(Context context, string text, InfoLevel infoLevel, GravityFlags gravity, bool actionBar = true)
        {
            LayoutInflater inflater = context.GetSystemService(Context.LayoutInflaterService) as LayoutInflater;

            View layout = inflater.Inflate(Resource.Layout.Infobar, null);

            TextView textView = layout.FindViewById <TextView>(Resource.Id.Infobar_text);

            textView.Text = text;

            if (infoLevel == InfoLevel.Error)
            {
                textView.SetCompoundDrawablesWithIntrinsicBounds(Resource.Drawable.ic_warning_black_24dp, 0, 0, 0);
            }
            else if (infoLevel == InfoLevel.Info)
            {
                textView.SetCompoundDrawablesWithIntrinsicBounds(Resource.Drawable.ic_error_black_24dp, 0, 0, 0);
                textView.SetTextColor(Android.Graphics.Color.Black);
            }
            else // infoLevel == InfoLevel.Warning
            {
                textView.SetCompoundDrawablesWithIntrinsicBounds(Resource.Drawable.ic_error_black_24dp, 0, 0, 0);
                textView.SetTextColor(Android.Graphics.Color.Black);
            }

            Toast toast = new Toast(context);

            toast.SetGravity(gravity, 0, 0);
            toast.View     = layout;
            toast.Duration = ToastLength.Short;
            toast.Show();
        }
        private void SpinButtonAlignmentLayout()
        {
            //spinButtonAlignment
            TextView spinButtonText = new TextView(context);

            spinButtonText.LayoutParameters = new FrameLayout.LayoutParams((int)(totalWidth * 0.33), ViewGroup.LayoutParams.WrapContent, GravityFlags.Center);
            spinButtonText.TextSize         = 15;
            spinButtonText.Text             = "SpinButtonAlignment";

            //spinButtonList
            List <String> spinButtonList = new List <String>();

            spinButtonList.Add("Right");
            spinButtonList.Add("Left");
            spinButtonList.Add("Both");
            spinButtonDataAdapter = new ArrayAdapter <String>
                                        (context, Android.Resource.Layout.SimpleSpinnerItem, spinButtonList);
            spinButtonDataAdapter.SetDropDownViewResource
                (Android.Resource.Layout.SimpleSpinnerDropDownItem);
            //spinButtonSpinner
            spinButtonSpinner = new Spinner(context, SpinnerMode.Dialog);
            spinButtonSpinner.LayoutParameters = new FrameLayout.LayoutParams((int)(totalWidth * 0.33), ViewGroup.LayoutParams.WrapContent, GravityFlags.Center);
            spinButtonSpinner.Adapter          = spinButtonDataAdapter;
            spinButtonSpinner.SetSelection(spinButtonPosition);
            spinButtonSpinner.ItemSelected += (object sender, AdapterView.ItemSelectedEventArgs e) => {
                String selectedItem = spinButtonDataAdapter.GetItem(e.Position);
                spinButtonPosition = e.Position;
                if (selectedItem.Equals("Right"))
                {
                    spinButtonAlignment = SpinButtonAlignment.Right;
                    gravity             = GravityFlags.CenterVertical;
                }
                if (selectedItem.Equals("Left"))
                {
                    spinButtonAlignment = SpinButtonAlignment.Left;
                    gravity             = GravityFlags.End | GravityFlags.CenterVertical;
                }
                if (selectedItem.Equals("Both"))
                {
                    spinButtonAlignment = SpinButtonAlignment.Both;
                    gravity             = GravityFlags.Center;
                }
                ApplyChanges();
            };

            //spinButtonLayout
            LinearLayout spinButtonLayout = new LinearLayout(context);

            spinButtonLayout.Orientation = Android.Widget.Orientation.Horizontal;
            spinButtonLayout.AddView(spinButtonText);
            spinButtonLayout.AddView(spinButtonSpinner);
            proprtyOptionsLayout.AddView(spinButtonLayout);

            //spaceText
            TextView spaceText4 = new TextView(context);

            spaceText4.LayoutParameters = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, 40, GravityFlags.Center);
            proprtyOptionsLayout.AddView(spaceText4);
        }
        private void SpinButtonLayout()
        {
            /***********************
            **SpinButtonAlignment**
            ***********************/
            LinearLayout.LayoutParams spinButtonLayoutParams = new LinearLayout.LayoutParams(width * 2, 5);
            spinButtonLayoutParams.SetMargins(0, 20, 0, 0);

            //SpinButtonText
            TextView spinButtonText = new TextView(context);

            spinButtonText.TextSize = 20;
            spinButtonText.Text     = "SpinButtonAlignment";

            //SpinButtonList
            List <String> spinButtonList = new List <String>();

            spinButtonList.Add("Right");
            spinButtonList.Add("Left");
            spinButtonList.Add("Both");
            spinButtonDataAdapter = new ArrayAdapter <String>
                                        (context, Android.Resource.Layout.SimpleSpinnerItem, spinButtonList);
            spinButtonDataAdapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);

            //SpinButtonSpinner
            spinButtonSpinner         = new Spinner(context, SpinnerMode.Dialog);
            spinButtonSpinner.Adapter = spinButtonDataAdapter;

            TextView textSpacing = new TextView(context);

            propertylayout.AddView(textSpacing);
            //SpinButtonSpinner ItemSelected Listener
            spinButtonSpinner.ItemSelected += (object sender, AdapterView.ItemSelectedEventArgs e) => {
                String selectedItem = spinButtonDataAdapter.GetItem(e.Position);
                if (selectedItem.Equals("Right"))
                {
                    spinButtonAlignment = SpinButtonAlignment.Right;
                    gravity             = GravityFlags.CenterVertical;
                }
                if (selectedItem.Equals("Left"))
                {
                    spinButtonAlignment = SpinButtonAlignment.Left;
                    gravity             = GravityFlags.End | GravityFlags.CenterVertical;
                }
                if (selectedItem.Equals("Both"))
                {
                    spinButtonAlignment = SpinButtonAlignment.Both;
                    gravity             = GravityFlags.Center;
                }
            };
            propertylayout.AddView(spinButtonText);
            propertylayout.AddView(spinButtonSpinner);

            //SpinButtonSeparate
            SeparatorView spinButtonSeparate = new SeparatorView(context, width * 2);

            spinButtonSeparate.LayoutParameters = new ViewGroup.LayoutParams(width * 2, 5);
            // propertylayout.AddView(spinButtonSeparate, spinButtonLayoutParams);
        }
Exemple #15
0
 private void SetLayoutSizeAndGravity(View view, int width, int height, GravityFlags gravity)
 {
     FrameLayout.LayoutParams param = (FrameLayout.LayoutParams)view.LayoutParameters;
     param.Height          = height;
     param.Width           = width;
     param.Gravity         = gravity;
     view.LayoutParameters = param;
 }
 public void SetIndicatorGravity(GravityFlags gravity)
 {
     _mIndicatorGravity = gravity;
     FrameLayout.LayoutParams parms = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent);
     parms.Gravity = _mIndicatorGravity;
     parms.SetMargins(_indicatorMarginHorizontal, _indicatorMarginVertical, _indicatorMarginHorizontal, _indicatorMarginVertical);
     _mIndicator.LayoutParameters = parms;
 }
        public ViewLayoutParams(Context c, IAttributeSet attrs) : base(c, attrs)
        {
            TypedArray ta = c.ObtainStyledAttributes(attrs, Resource.Styleable.DragLayout_Layout);

            this.Layer   = ta.GetInt(Resource.Styleable.DragLayout_Layout_layout_layer, LAYER_NONE);
            this.Gravity = (GravityFlags)ta.GetInt(Resource.Styleable.DragLayout_Layout_android_layout_gravity, (int)GravityFlags.NoGravity);
            ta.Recycle();
        }
Exemple #18
0
        private void SetTextViewGravity(ref TextView refTextView)
        {
            GravityFlags gravity =
                (GetHorizontalTextAlignmentAsGravityFlag() |
                 GetVerticalTextAlignmentAsGravityFlag());

            refTextView.Gravity = gravity;
        }
        private void LayoutShowcaseContent()
        {
            // don't bother laying out if we're not ready
            if (CurrentStep == null)
            {
                return;
            }

            // now figure out whether to put content above or below it
            int height   = MeasuredHeight;
            int midPoint = height / 2;
            int yPos     = CurrentStep.Position.Y;

            if (yPos > midPoint)
            {
                // value is in lower half of screen, we'll sit above it
                contentTopMargin    = 0;
                contentBottomMargin = (height - yPos) + CurrentStep.Radius;
                contentGravity      = GravityFlags.Bottom;
            }
            else
            {
                // value is in upper half of screen, we'll sit below it
                contentTopMargin    = yPos + CurrentStep.Radius;
                contentBottomMargin = 0;
                contentGravity      = GravityFlags.Top;
            }
            if (contentContainer != null && contentContainer.LayoutParameters != null)
            {
                FrameLayout.LayoutParams contentLP = (LayoutParams)contentContainer.LayoutParameters;

                bool layoutParamsChanged = false;

                if (contentLP.BottomMargin != contentBottomMargin)
                {
                    contentLP.BottomMargin = contentBottomMargin;
                    layoutParamsChanged    = true;
                }

                if (contentLP.TopMargin != contentTopMargin)
                {
                    contentLP.TopMargin = contentTopMargin;
                    layoutParamsChanged = true;
                }

                if (contentLP.Gravity != contentGravity)
                {
                    contentLP.Gravity   = contentGravity;
                    layoutParamsChanged = true;
                }

                // Only apply the layout params if we've actually changed them, otherwise we'll get stuck in a layout loop
                if (layoutParamsChanged)
                {
                    contentContainer.LayoutParameters = contentLP;
                }
            }
        }
Exemple #20
0
        /**
         * Tells us about the "Target" which is the view we want to anchor to.
         * We figure out where it is on screen and (optionally) how big it is.
         * We also figure out whether to place our content and dismiss button above or below it.
         *
         * @param target
         */
        public void SetTarget(Target.Target target)
        {
            _target = target;

            // update dismiss button state
            UpdateDismissButton();

            if (_target != null)
            {
                /**
                 * If we're on lollipop then make sure we don't draw over the nav bar
                 */
                if (!_renderOverNav && Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop)
                {
                    _bottomMargin = GetSoftButtonsBarSizePort((Activity)Context);
                    var contentLp = (LayoutParams)LayoutParameters;

                    if (contentLp != null && contentLp.BottomMargin != _bottomMargin)
                    {
                        contentLp.BottomMargin = _bottomMargin;
                    }
                }

                // apply the target position
                var targetPoint  = _target.Point;
                var targetBounds = _target.Bounds;
                Position = targetPoint;

                // now figure out whether to put content above or below it
                var height   = MeasuredHeight;
                var midPoint = height / 2;
                var yPos     = targetPoint.Y;

                var radius = Math.Max(targetBounds.Height(), targetBounds.Width()) / 2;
                if (_shape != null)
                {
                    _shape.UpdateTarget(_target);
                    radius = _shape.Height / 2;
                }

                if (yPos > midPoint)
                {
                    // target is in lower half of screen, we'll sit above it
                    _contentTopMargin    = 0;
                    _contentBottomMargin = (height - yPos) + radius + _shapePadding;
                    _gravity             = GravityFlags.Bottom;
                }
                else
                {
                    // target is in upper half of screen, we'll sit below it
                    _contentTopMargin    = yPos + radius + _shapePadding;
                    _contentBottomMargin = 0;
                    _gravity             = GravityFlags.Top;
                }
            }

            ApplyLayoutParams();
        }
        public LayerDrawable AddPickerStyles(string imagePath, GravityFlags gravityFlags1)
        {
            Drawable[]    layers        = { GetDrawable(imagePath, gravityFlags1) };
            LayerDrawable layerDrawable = new LayerDrawable(layers);

            layerDrawable.SetLayerInset(0, 0, 0, 0, 0);

            return(layerDrawable);
        }
Exemple #22
0
        private LinearLayout RowHolder(GravityFlags gravity = GravityFlags.CenterHorizontal)
        {
            LinearLayout layout = new LinearLayout(context);

            layout.Orientation      = Orientation.Horizontal;
            layout.LayoutParameters = new ViewGroup.LayoutParams(LayoutParams.MatchParent, LayoutParams.WrapContent);
            layout.WeightSum        = 1;
            layout.SetGravity(gravity);
            return(layout);
        }
 /// <summary>
 /// Toasts the alert.
 /// </summary>
 /// <param name="message">The message.</param>
 /// <param name="gravity">The gravity.</param>
 /// <param name="duration">The duration.</param>
 public void ToastAlert(string message, ToastGravity gravity = ToastGravity.Top, int duration = 3000)
 {
     Application.SynchronizationContext.Post(ignored =>
     {
         GravityFlags flag = gravity == ToastGravity.Top ? GravityFlags.Top : GravityFlags.Bottom;
         var toast         = Toast.MakeText(Application.Context, message, ToastLength.Short);
         toast.SetGravity(flag | GravityFlags.Center, 0, 100);
         toast.Show();
     }, null);
 }
Exemple #24
0
        public static void coloredToast(String text, Context context, Color color, GravityFlags gravity)
        {
            Toast toast = Toast.MakeText(context, text, ToastLength.Long);

            toast.SetGravity(gravity, 0, 0);
            View view = toast.View;

            view.SetBackgroundColor(color);

            toast.Show();
        }
Exemple #25
0
        //TODO: It should allow apply style to multiple View types.
        //For example, actually it only applies the style to the NotificationWidget
        //But not the Floating Notification.
        public NotificationStyleApplier(ref LinearLayout notificationView, Fragment fragment)
        {
            this.notificationView = notificationView;
            notificationFragment  = fragment;
            notificationActions   = notificationView.FindViewById <LinearLayout>(Resource.Id.notificationActions);
            titulo  = notificationView.FindViewById <TextView>(Resource.Id.tvTitulo);
            texto   = notificationView.FindViewById <TextView>(Resource.Id.tvTexto);
            appName = notificationView.FindViewById <TextView>(Resource.Id.tvAppName);
            subtext = notificationView.FindViewById <TextView>(Resource.Id.tvnotifSubtext);
            when    = notificationView.FindViewById <TextView>(Resource.Id.tvWhen);
            closenotificationbutton     = notificationView.FindViewById <ImageButton>(Resource.Id.closenotificationbutton);
            inlineNotificationContainer = notificationView.FindViewById <LinearLayout>(Resource.Id.inlineNotificationContainer);
            inlineresponse             = notificationView.FindViewById <EditText>(Resource.Id.tvInlineText);
            sendinlineresponse         = notificationView.FindViewById <ImageButton>(Resource.Id.sendInlineResponseButton);
            togglenotificationcollapse = notificationView.FindViewById <ImageButton>(Resource.Id.toggleCollapse);
            notificationProgress       = notificationView.FindViewById <ProgressBar>(Resource.Id.notificationprogress);

            //This set's default options for actions and related.
            //Each notification Style can override these parameters.
            switch (currentAndroidVersion)
            {
            case BuildVersionCodes.Kitkat:
            case BuildVersionCodes.KitkatWatch:
            case BuildVersionCodes.Lollipop:
            case BuildVersionCodes.LollipopMr1:
            case BuildVersionCodes.M:
                actionButtonsGravity           = GravityFlags.Left | GravityFlags.CenterVertical;
                actionButtonsContainerGravity  = GravityFlags.Left;
                actionTextsAreinCapitalLetters = false;
                shouldShowIcons     = true;
                actionTextsTypeface = "sans-serif-condensed";
                shouldShowIcons     = false;
                actiontextMaxLines  = 1;
                break;

            case BuildVersionCodes.N:
            case BuildVersionCodes.NMr1:
            case BuildVersionCodes.O:
            case BuildVersionCodes.OMr1:
            case BuildVersionCodes.P:
                actionButtonsGravity           = GravityFlags.Left | GravityFlags.CenterVertical;
                actionButtonsContainerGravity  = GravityFlags.Left;
                actionTextsAreinCapitalLetters = true;
                shouldShowIcons     = false;
                actionTextsTypeface = "sans-serif-condensed";
                shouldShowIcons     = false; //MediaStyle overrides this.
                actiontextMaxLines  = 1;
                break;

            default:
                break;
            }
        }
Exemple #26
0
        private void ConfigureEmiter(View emiter, GravityFlags gravity)
        {
            // It works with an emision range
            var location = new int[2];

            emiter.GetLocationInWindow(location);

            // Check horizontal gravity and set range
            if (HasGravity(gravity, GravityFlags.Left))
            {
                mEmiterXMin = location[0] - mParentLocation[0];
                mEmiterXMax = mEmiterXMin;
            }
            else if (HasGravity(gravity, GravityFlags.Right))
            {
                mEmiterXMin = location[0] + emiter.Width - mParentLocation[0];
                mEmiterXMax = mEmiterXMin;
            }
            else if (HasGravity(gravity, GravityFlags.CenterHorizontal))
            {
                mEmiterXMin = location[0] + emiter.Width / 2 - mParentLocation[0];
                mEmiterXMax = mEmiterXMin;
            }
            else
            {
                // All the range
                mEmiterXMin = location[0] - mParentLocation[0];
                mEmiterXMax = location[0] + emiter.Width - mParentLocation[0];
            }

            // Now, vertical gravity and range
            if (HasGravity(gravity, GravityFlags.Top))
            {
                mEmiterYMin = location[1] - mParentLocation[1];
                mEmiterYMax = mEmiterYMin;
            }
            else if (HasGravity(gravity, GravityFlags.Bottom))
            {
                mEmiterYMin = location[1] + emiter.Height - mParentLocation[1];
                mEmiterYMax = mEmiterYMin;
            }
            else if (HasGravity(gravity, GravityFlags.CenterVertical))
            {
                mEmiterYMin = location[1] + emiter.Height / 2 - mParentLocation[1];
                mEmiterYMax = mEmiterYMin;
            }
            else
            {
                // All the range
                mEmiterYMin = location[1] - mParentLocation[1];
                mEmiterYMax = location[1] + emiter.Width - mParentLocation[1];
            }
        }
Exemple #27
0
 public OverlayLocationParams(GravityFlags gravity = GravityFlags.Start | GravityFlags.Top,
                              int x      = 0,
                              int y      = 0,
                              int width  = ViewGroup.LayoutParams.WrapContent,
                              int height = ViewGroup.LayoutParams.WrapContent)
 {
     Gravity = gravity;
     X       = x;
     Y       = y;
     Width   = width;
     Height  = height;
 }
 /// <param name="gravity"> gravity of badge (TOP|LEFT ..etc) </param>
 /// <returns> this, to allow builder pattern </returns>
 public virtual BadgeItem SetGravity(GravityFlags gravity)
 {
     this.mGravity = gravity;
     if (WeakReferenceValid)
     {
         TextView textView = (TextView)mTextViewRef.Get();
         FrameLayout.LayoutParams layoutParams = (FrameLayout.LayoutParams)textView.LayoutParameters;
         layoutParams.Gravity      = gravity;
         textView.LayoutParameters = layoutParams;
     }
     return(this);
 }
        private BitmapDrawable GetDrawable(string imagePath, GravityFlags gravityFlags)
        {
            int resID = Resources.GetIdentifier(imagePath, "drawable", this.Context.PackageName);

            var drawable = ContextCompat.GetDrawable(this.Context, resID);
            var bitmap   = ((BitmapDrawable)drawable).Bitmap;

            var result = new BitmapDrawable(Resources, Bitmap.CreateScaledBitmap(bitmap, 15, 15, true));

            result.Gravity = gravityFlags;

            return(result);
        }
Exemple #30
0
        public BaseLayoutParams(
            int width,
            int height,
            GravityFlags gravityFlags)
            : base(width, height, gravityFlags)
        {
#if DEBUG_LAYOUT
            if (this.Gravity != gravityFlags)
            {
                throw new Exception();
            }
#endif
        }
        private void InitPageIndicator()
        {
            DotCount     = MinDotCount;
            _gravityFlag = GravityFlags.Center;
            _activeDot   = 0;
            _dotSpacing  = 0;
            _dotType     = DotTypes.Single;

            _extraState = OnCreateDrawableState(1);
            var setAsInt = SelectedStateSet.OfType <int>().ToArray();

            MergeDrawableStates(_extraState, setAsInt);
        }
Exemple #32
0
        public static LinearLayout.LayoutParams ForLL(int width = MatchParent, int height = WrapContent,
                                                  float weight = 0, 
                                                  int margin = -1, 
                                                  int marginLeft = -1, int marginRight = -1,
                                                  int marginTop = -1, int marginBottom = -1,
                                                  GravityFlags gravity = GravityFlags.NoGravity)
        {
            var layoutParams = new LinearLayout.LayoutParams(width, height, weight);

              SetMargin(layoutParams, margin: margin, marginLeft: marginLeft, marginRight: marginRight,
                marginTop: marginTop, marginBottom: marginBottom);

              if (gravity != GravityFlags.NoGravity) {
            layoutParams.Gravity = gravity;
              }

              return layoutParams;
        }
Exemple #33
0
 public ButtonUI(ButtonUI buttonUI)
 {
     StrokeShade = buttonUI.StrokeShade;
     FillShade = buttonUI.FillShade;
     StrokeColor = buttonUI.StrokeColor;
     FillColor = buttonUI.FillColor;
     IsTextStroked = buttonUI.IsTextStroked;
     IsSquared = buttonUI.IsSquared;
     Typeface = buttonUI.Typeface;
     Gravity = buttonUI.Gravity;
     Shape = buttonUI.Shape;
     Padding = buttonUI.Padding;
     TextSizeRatio = buttonUI.TextSizeRatio;
     StrokeBorderWidthRatio = buttonUI.StrokeBorderWidthRatio;
     StrokeTextWidthRatio = buttonUI.StrokeTextWidthRatio;
     StrokeBorderWidth = buttonUI.StrokeBorderWidth;
     StrokeTextWidth = buttonUI.StrokeTextWidth;
     _textSize = buttonUI._textSize;
     _radiusIn = buttonUI._radiusIn;
     _radiusOut = buttonUI._radiusOut;
 }
Exemple #34
0
		public ExpandHelper(Context context, Callback callback, int small, int large) {
			this.smallSize = small;
			this.maximumStretch = Math.Max (smallSize, 1) * StretchInterval;
			this.largeSize = large;
			this.context = context;
			this.callback = callback;
			this.scaler = new ViewScaler();
			this.gravity = GravityFlags.Top;

			//this.scaleAnimation = ObjectAnimator.OfFloat (scaler, "Height", 0f);
			this.scaleAnimation = ValueAnimator.OfFloat (0f);
			this.scaleAnimation.Update += (sender, e) => scaler.Height = (float)e.Animation.AnimatedValue;
			this.scaleAnimation.SetDuration (ExpandDuration);

			AnimatorListenerAdapter glowVisibilityController = new AnimatorListener ();
			glowTopAnimation = ObjectAnimator.OfFloat (null, "alpha", 0f);
			glowTopAnimation.AddListener (glowVisibilityController);
			glowBottomAnimation = ObjectAnimator.OfFloat (null, "alpha", 0f);
			glowBottomAnimation.AddListener (glowVisibilityController);
			glowAnimationSet = new AnimatorSet();
			glowAnimationSet.Play (glowTopAnimation).With(glowBottomAnimation);
			glowAnimationSet.SetDuration(GlowDuration);

			detector = new DoubleSwipeDetector(context, new GestureDetector (this));
		}
Exemple #35
0
		public void SetGravity (GravityFlags gravity)
		{
			this.gravity = gravity;
		}
        private void AddTab(int index, ICharSequence text, int iconResId, GravityFlags iconGravity)
        {
            var tabView = new TabView(Context, this) {Focusable = true, Index = index, TextFormatted = text};
            tabView.Click += (sender, args) =>
            {
                var tabview = (TabView)sender;
                var oldSelected = _viewPager.CurrentItem;
                var newSelected = tabview.Index;

                _viewPager.CurrentItem = newSelected;
                if(oldSelected == newSelected && TabReselected != null)
                    TabReselected(this, new TabReselectedEventArgs { Position = newSelected });
            };

            if (iconResId != 0)
            {
                switch (iconGravity) {
                case GravityFlags.Top:
                    tabView.SetCompoundDrawablesWithIntrinsicBounds(0, iconResId, 0, 0);
                    break;
                case GravityFlags.Right:
                    tabView.SetCompoundDrawablesWithIntrinsicBounds(0, 0, iconResId, 0);
                    break;
                case GravityFlags.Bottom:
                    tabView.SetCompoundDrawablesWithIntrinsicBounds(0, 0, 0, iconResId);
                    break;
                case GravityFlags.Left:
                default:
                    tabView.SetCompoundDrawablesWithIntrinsicBounds(iconResId, 0, 0, 0);
                    break;
                }
            }

            _tabLayout.AddView(tabView, new LinearLayout.LayoutParams(0, ViewGroup.LayoutParams.MatchParent, 1));
        }
 private LinearLayout RowHolder(GravityFlags gravity = GravityFlags.CenterHorizontal)
 {
     LinearLayout layout = new LinearLayout(context);
     layout.Orientation = Orientation.Horizontal;
     layout.LayoutParameters = new ViewGroup.LayoutParams(LayoutParams.MatchParent, LayoutParams.WrapContent);
     layout.WeightSum = 1;
     layout.SetGravity(gravity);
     return layout;
 }
		/**
     * Instantiates a new holo circular progress bar.
     *
     * @param context  the context
     * @param attrs    the attrs
     * @param defStyle the def style
     */
		public HoloCircularProgressBar(Context context, IAttributeSet Attrs,int DefStyle):base(context, Attrs, DefStyle) {

			// load the styled attributes and set their properties
			TypedArray attributes = context.ObtainStyledAttributes(Attrs, Resource.Styleable.HoloCircularProgressBar,DefStyle, 0);
			if (attributes != null) {
				try {
					SetProgressColor(attributes.GetColor(Resource.Styleable.HoloCircularProgressBar_progress_color, Color.Cyan));
					SetProgressBackgroundColor(attributes.GetColor(Resource.Styleable.HoloCircularProgressBar_progress_background_color,Color.Green));
					SetProgress(attributes.GetFloat(Resource.Styleable.HoloCircularProgressBar_progress, 0.0f));
					SetMarkerProgress(attributes.GetFloat(Resource.Styleable.HoloCircularProgressBar_marker_progress,0.0f));
					SetWheelSize((int) attributes.GetDimension(Resource.Styleable.HoloCircularProgressBar_stroke_width, 10));
					SetThumbEnabled(attributes.GetBoolean(Resource.Styleable.HoloCircularProgressBar_thumb_visible, true));
					SetMarkerEnabled(attributes.GetBoolean(Resource.Styleable.HoloCircularProgressBar_marker_visible, true));

					_gravity = (GravityFlags)attributes.GetInt (Resource.Styleable.HoloCircularProgressBar_android_gravity,(int)GravityFlags.Center);
				} finally {
					// make sure recycle is always called.
					attributes.Recycle();
				}
			}

			_thumbRadius = _circleStrokeWidth * 2;

			UpdateBackgroundColor();

			UpdateMarkerColor();

			UpdateProgressColor();

			// the view has now all properties and can be drawn
			_isInitializing = false;

		}
 public AppMsg SetLayoutGravity(GravityFlags gravity)
 {
     mLayoutParams = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.WrapContent, gravity);
     return this;
 }
        private void LayoutShowcaseContent()
        {
            // don't bother laying out if we're not ready
            if (CurrentStep == null)
            {
                return;
            }

            // now figure out whether to put content above or below it
            int height = MeasuredHeight;
            int midPoint = height / 2;
            int yPos = CurrentStep.Position.Y;

            if (yPos > midPoint)
            {
                // value is in lower half of screen, we'll sit above it
                contentTopMargin = 0;
                contentBottomMargin = (height - yPos) + CurrentStep.Radius;
                contentGravity = GravityFlags.Bottom;
            }
            else
            {
                // value is in upper half of screen, we'll sit below it
                contentTopMargin = yPos + CurrentStep.Radius;
                contentBottomMargin = 0;
                contentGravity = GravityFlags.Top;
            }
            if (contentContainer != null && contentContainer.LayoutParameters != null)
            {
                FrameLayout.LayoutParams contentLP = (LayoutParams)contentContainer.LayoutParameters;

                bool layoutParamsChanged = false;

                if (contentLP.BottomMargin != contentBottomMargin)
                {
                    contentLP.BottomMargin = contentBottomMargin;
                    layoutParamsChanged = true;
                }

                if (contentLP.TopMargin != contentTopMargin)
                {
                    contentLP.TopMargin = contentTopMargin;
                    layoutParamsChanged = true;
                }

                if (contentLP.Gravity != contentGravity)
                {
                    contentLP.Gravity = contentGravity;
                    layoutParamsChanged = true;
                }

                // Only apply the layout params if we've actually changed them, otherwise we'll get stuck in a layout loop
                if (layoutParamsChanged)
                {
                    contentContainer.LayoutParameters = contentLP;
                }
            }
        }