Beispiel #1
0
        public ZoomingAndScrolling()
        {
            InitializeComponent();

            Title = AppResources.ZoomingScrollingTitle;
            this.lblZoomMode.Text = AppResources.ZoomMode;

            this.flexChart.ItemsSource    = GenerateRandNormal(500);
            this.flexChart.Palette        = C1.Xamarin.Forms.Chart.Palette.Superhero;
            this.flexChart.Header         = AppResources.ScrollZoomInstructions;
            this.flexChart.AxisY.Format   = "n2";
            this.flexChart.LegendPosition = ChartPositionType.Bottom;

            //disable tooltip on android
            //Device.OnPlatform(Android: () => this.flexChart.ToolTip = null);
            ZoomBehavior z = new ZoomBehavior();

            z.ZoomMode = GestureMode.X;
            flexChart.Behaviors.Add(z);

            TranslateBehavior t = new TranslateBehavior();

            flexChart.Behaviors.Add(t);

            foreach (var item in Enum.GetNames(typeof(GestureMode)))
            {
                this.pickerZoomMode.Items.Add(item);
            }
            this.pickerZoomMode.SelectedIndex = 2;
        }
Beispiel #2
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            chart.ItemsSource  = GenerateRandNormal(500);
            chart.Palette      = Palette.Superhero;
            chart.Header       = NSBundle.MainBundle.LocalizedString("Drag to scroll/Pinch to zoom", "optional");
            chart.AxisY.Format = "n2";

            chart.BindingX = "X";
            chart.Series.Add(new ChartSeries()
            {
                SeriesName = "Normal Distribution", Binding = "Y"
            });
            chart.ChartType      = ChartType.Scatter;
            chart.LegendPosition = ChartPositionType.Bottom;

            ZoomBehavior z = new ZoomBehavior();

            chart.Behaviors.Add(z);

            TranslateBehavior t = new TranslateBehavior();

            chart.Behaviors.Add(t);

            zoomModeSelector.SelectedSegment = 3;
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);
            SetContentView(Resource.Layout.activity_periodictable);

            var toolbar = FindViewById <Toolbar>(Resource.Id.toolbar);

            SetSupportActionBar(toolbar);
            SupportActionBar.Title = GetString(Resource.String.periodictable);
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);
            SupportActionBar.SetHomeButtonEnabled(true);

            // initializing widgets
            sunburst                          = (C1Sunburst)FindViewById(Resource.Id.sunburst);
            sunburst.ShowTooltip              = false;
            sunburst.LegendPosition           = ChartPositionType.None;
            sunburst.InnerRadius              = 0.3;
            sunburst.SelectionMode            = ChartSelectionModeType.Point;
            sunburst.Binding                  = "Value";
            sunburst.BindingName              = "GroupName,SubGroupName,Symbol";
            sunburst.ChildItemsPath           = "SubGroups,Elements";
            sunburst.ItemsSource              = Data.Groups;
            sunburst.DataLabel.Position       = PieLabelPosition.Center;
            sunburst.DataLabel.Content        = "{}{name}";
            sunburst.DataLabel.Style.FontSize = 6;
            sunburst.Tapped                  += Sunburst_Tapped;

            TranslateBehavior t = new TranslateBehavior();

            sunburst.Behaviors.Add(t);
            ZoomBehavior z = new ZoomBehavior();

            sunburst.Behaviors.Add(z);
            Resources      resources = BaseContext.Resources;
            DisplayMetrics metrics   = resources.DisplayMetrics;

            sunburst.TranslateCustomViews += (object sender, EventArgs e) =>
            {
                if (_view != null)
                {
                    _view.Visibility = ViewStates.Invisible;
                    _view.SetX((int)(_x + sunburst.TranslationX));
                    _view.SetY((int)(_y + sunburst.TranslationY));

                    if (sunburst.Scale != 1)
                    {
                        if (_view.Parent != null)
                        {
                            _view.ScaleX = (float)sunburst.Scale;
                            _view.ScaleY = (float)sunburst.Scale;
                        }
                    }
                    _view.Visibility = ViewStates.Visible;
                }
            };
        }
        protected override void OnCreate(Bundle savedInstanceState)
        {
            base.OnCreate(savedInstanceState);

            SetContentView(Resource.Layout.activity_zooming_and_scrolling);
            var toolbar = FindViewById <Toolbar>(Resource.Id.toolbar);

            SetSupportActionBar(toolbar);
            SupportActionBar.Title = GetString(Resource.String.zoomingAndScrolling);
            SupportActionBar.SetDisplayHomeAsUpEnabled(true);
            SupportActionBar.SetHomeButtonEnabled(true);

            // initializing widgets
            mChart           = (FlexChart)FindViewById(Resource.Id.flexchart);
            mChart.ChartType = ChartType.Scatter;

            mZoomModeSpinner = (Spinner)FindViewById(Resource.Id.zoomModeSpinner);

            mChart.BindingX = "X";
            ChartSeries seriesSales = new ChartSeries();

            seriesSales.Chart      = mChart;
            seriesSales.SeriesName = "Normal Distribution";
            seriesSales.Binding    = "Y";

            mChart.Series.Add(seriesSales);

            mChart.ItemsSource = GenerateRandNormal(500);
            //mChart.AxisY.MajorUnit = 1.0;
            mChart.LegendPosition = ChartPositionType.Bottom;

            ZoomBehavior z = new ZoomBehavior();

            mChart.Behaviors.Add(z);

            TranslateBehavior t = new TranslateBehavior();

            mChart.Behaviors.Add(t);

            ArrayAdapter adapter = ArrayAdapter.CreateFromResource(this, Resource.Array.zoomModeSpinnerValues, Android.Resource.Layout.SimpleSpinnerItem);

            adapter.SetDropDownViewResource(Android.Resource.Layout.SimpleSpinnerDropDownItem);
            mZoomModeSpinner.Adapter = adapter;
            mZoomModeSpinner.SetSelection(3);
            mZoomModeSpinner.ItemSelected += mZoomModeSpinner_ItemSelected;
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            // Perform any additional setup after loading the view, typically from a nib.
            sunburst                          = new C1Sunburst();
            sunburst.ShowTooltip              = false;
            sunburst.LegendPosition           = ChartPositionType.None;
            sunburst.InnerRadius              = 0.4;
            sunburst.SelectionMode            = ChartSelectionModeType.Point;
            sunburst.Binding                  = "Value";
            sunburst.BindingName              = "GroupName,SubGroupName,Symbol";
            sunburst.ChildItemsPath           = "SubGroups,Elements";
            sunburst.ItemsSource              = Data.Groups;
            sunburst.DataLabel.Position       = PieLabelPosition.Center;
            sunburst.DataLabel.Content        = "{}{name}";
            sunburst.DataLabel.Style.FontSize = 6;

            sunburst.Tapped += Sunburst_Tapped;
            this.View.Add(sunburst);
            this.View.Add(popup);
            this.View.BringSubviewToFront(popup);

            ZoomBehavior z = new ZoomBehavior();

            sunburst.Behaviors.Add(z);

            TranslateBehavior t = new TranslateBehavior();

            sunburst.Behaviors.Add(t);

            sunburst.TranslateCustomViews += (object sender, EventArgs e) =>
            {
                if (popup != null)
                {
                    CGAffineTransform scale     = CGAffineTransform.MakeScale((nfloat)sunburst.Scale, (nfloat)sunburst.Scale);
                    CGAffineTransform transform = CGAffineTransform.MakeTranslation((nfloat)sunburst.TranslationX, (nfloat)sunburst.TranslationY);
                    popup.Transform = CGAffineTransform.Multiply(scale, transform);
                }
            };
            sunburst.ClipsToBounds = true;
        }
Beispiel #6
0
        public LoadAnimationSample()
        {
            InitializeComponent();
            Title = AppResources.LoadAnimationTitle;
            this.lblChartType.Text = AppResources.ChartType;
            this.lblStacking.Text  = AppResources.Stacking;
            this.lblRotated.Text   = AppResources.Rotated;


            foreach (var item in ChartSampleFactory.GetAllChartTypes())
            {
                this.pickerChartType.Items.Add(item.ToString());
            }
            foreach (var item in Enum.GetNames(typeof(ChartStackingType)))
            {
                this.pickerStackType.Items.Add(item);
            }
            foreach (var item in Enum.GetNames(typeof(AnimationMode)))
            {
                this.pickerAnimationMode.Items.Add(item);
            }
            ZoomBehavior z = new ZoomBehavior();

            z.ZoomMode = GestureMode.X;
            flexChart.Behaviors.Add(z);

            TranslateBehavior t = new TranslateBehavior();

            flexChart.Behaviors.Add(t);
            this.pickerChartType.SelectedIndex     = 0;
            this.pickerStackType.SelectedIndex     = 0;
            this.pickerAnimationMode.SelectedIndex = 3;

            flexChart.AnimationMode = C1.Xamarin.Forms.Chart.AnimationMode.All;
            C1Animation loadAnimation = new C1Animation();

            loadAnimation.Duration  = new TimeSpan(1500 * 10000);
            loadAnimation.Easing    = Xamarin.Forms.Easing.CubicInOut;
            flexChart.LoadAnimation = loadAnimation;
        }
Beispiel #7
0
        public PeriodicTable()
        {
            InitializeComponent();
            Title = AppResources.PeriodicTableTitle;

            this.sunburst.ItemsSource = Data.Groups;
            List <Color> CustomPalette = new List <Color> {
                Color.FromHex("#f44336"), Color.FromHex("#9c27b0"), Color.FromHex("#3f51b5"), Color.FromHex("#03A9F4"), Color.FromHex("#009688"), Color.FromHex("#8BC34A")
            };

            sunburst.Palette         = Palette.Custom;
            sunburst.CustomPalette   = CustomPalette;
            this.sunburst.Tapped    += Sunburst_Tapped;
            this.sunburst.Rendering += Sunburst_Rendering;
            TranslateBehavior t = new TranslateBehavior();

            sunburst.Behaviors.Add(t);
            ZoomBehavior z = new ZoomBehavior();

            sunburst.Behaviors.Add(z);

            sunburst.TranslateCustomViews += Sunburst_TranslateCustomViews;
        }
        private void mZoomModeSpinner_ItemSelected(object sender, AdapterView.ItemSelectedEventArgs e)
        {
            ZoomBehavior z = mChart.Behaviors[0] as ZoomBehavior;

            z.ZoomMode = (GestureMode)e.Position;
        }
Beispiel #9
0
 public void Awake()
 {
     zoomBehavior = gameObject.GetComponent <ZoomBehavior>();
 }
Beispiel #10
0
        void pickerZoomMode_SelectedIndexChanged(object sender, EventArgs e)
        {
            ZoomBehavior z = (ZoomBehavior)flexChart.Behaviors[0];

            z.ZoomMode = (GestureMode)Enum.Parse(typeof(GestureMode), this.pickerZoomMode.Items[this.pickerZoomMode.SelectedIndex]);
        }
Beispiel #11
0
        partial void zoomModeChanged(UISegmentedControl sender)
        {
            ZoomBehavior z = chart.Behaviors[0] as ZoomBehavior;

            z.ZoomMode = (GestureMode)(int)sender.SelectedSegment;
        }