public void TestSwipeItemView() { var swipeView = new SwipeView(); var swipeItemViewContent = new Grid(); swipeItemViewContent.BackgroundColor = Colors.Red; swipeItemViewContent.Children.Add(new Label { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Text = "SwipeItemView" }); var swipeItemView = new SwipeItemView { Content = swipeItemViewContent }; swipeView.LeftItems = new SwipeItems { swipeItemView }; Assert.NotNull(swipeItemView); Assert.NotNull(swipeItemView.Content); Assert.AreNotEqual(0, swipeView.LeftItems.Count); }
public override bool DispatchTouchEvent(MotionEvent touch) { if (TouchDispatcher.TouchingView != null) { double currentQuota = ((touch.GetX() - TouchDispatcher.StartingBiasX) / (double)Width); SwipeItemView touchedElement = (TouchDispatcher.TouchingView as SwipeItemView); switch (touch.ActionMasked) { case MotionEventActions.Up: Device.BeginInvokeOnMainThread(async() => { await touchedElement.CompleteTranslationAsync(currentQuota); }); (Element as SwipeListView).AppendTouchedElement(touchedElement); TouchDispatcher.TouchingView = null; TouchDispatcher.StartingBiasX = 0; TouchDispatcher.StartingBiasY = 0; break; case MotionEventActions.Move: TouchDispatcher.TouchingView.PerformTranslation(currentQuota); break; } } return(base.DispatchTouchEvent(touch)); }
private void RemoveElement(object sender, EventArgs e) { SwipeItemView itemView = (sender as Button).CommandParameter as SwipeItemView; swipeListView.PreventXamarinBug(); (this.BindingContext as ProjectViewModel).ListItems.Remove((ItemClass)(itemView.BoundItem)); }
UIView CreateSwipeItemView(SwipeItemView formsSwipeItemView) { var renderer = Platform.CreateRenderer(formsSwipeItemView); Platform.SetRenderer(formsSwipeItemView, renderer); UpdateSwipeItemViewLayout(formsSwipeItemView); return(renderer?.NativeView); }
AView CreateSwipeItemView(SwipeItemView swipeItemView) { var renderer = Platform.CreateRenderer(swipeItemView, _context); Platform.SetRenderer(swipeItemView, renderer); var swipeItem = renderer?.View; return(swipeItem); }
void UpdateSwipeItemViewLayout(SwipeItemView swipeItemView) { var swipeItemSize = GetSwipeItemSize(swipeItemView); var swipeItemHeight = swipeItemSize.Height; var swipeItemWidth = swipeItemSize.Width; swipeItemView.Layout(new Rectangle(0, 0, swipeItemWidth, swipeItemHeight)); swipeItemView.Content?.Layout(new Rectangle(0, 0, swipeItemWidth, swipeItemHeight)); }
SwipeView CreateMySwipeView() { var leftSwipeItem = new SwipeItemView { AutomationId = SwipeItemId, Content = new Label { Text = "Right", TextColor = Color.White, HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center }, BackgroundColor = Color.Green, WidthRequest = 80, Command = new Command(() => { _leftCount++; _leftSwipeCountLabel.Text = _leftCount.ToString(); }) }; var leftSwipeItems = new SwipeItems { leftSwipeItem }; leftSwipeItems.SwipeBehaviorOnInvoked = SwipeBehaviorOnInvoked.Close; leftSwipeItems.Mode = SwipeMode.Reveal; var swipeContent = new ContentView { Content = new StackLayout { AutomationId = SwipeViewId, BackgroundColor = Color.LightSkyBlue, Children = { new Label { Text = "SwipeItem Content", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center } } } }; var mySwipeView = new SwipeView { LeftItems = leftSwipeItems, Content = swipeContent, HeightRequest = 80 }; return(mySwipeView); }
AView CreateSwipeItemView(SwipeItemView swipeItemView) { var renderer = Platform.CreateRenderer(swipeItemView, _context); Platform.SetRenderer(swipeItemView, renderer); var swipeItem = renderer?.View; swipeItem.Visibility = swipeItemView.IsVisible ? ViewStates.Visible : ViewStates.Gone; return(swipeItem); }
static View CreateItemView(SwipeItemView item) { return new StackLayout { VerticalOptions = LayoutOptions.FillAndExpand, HorizontalOptions = LayoutOptions.FillAndExpand, Children = { item.Content } }; }
static View CreateItemView(SwipeItemView item) { return(new XStackLayout { VerticalOptions = LayoutOptions.Fill, HorizontalOptions = LayoutOptions.Fill, Children = { item.Content } }); }
public override void TouchesMoved(NSSet touches, UIEvent evt) { UITouch touch = touches.AnyObject as UITouch; touchLocation = touch.LocationInView(this); currentQuota = (float)((touchLocation.X - TouchDispatcher.StartingBiasX) / Bounds.Size.Width); touchedElement = (TouchDispatcher.TouchingView as SwipeItemView); TouchDispatcher.TouchingView.PerformTranslation(currentQuota); base.TouchesMoved(touches, evt); }
protected override void Init() { Title = "Issue 10940"; var layout = new StackLayout(); var instructions = new Label { Padding = 12, BackgroundColor = Colors.Black, TextColor = Colors.White, Text = "Swipe to the left and verify that opening the SwipeView the CustomEntry is created only one time." }; var customSwipeView = new CustomSwipeView { BackgroundColor = Colors.LightGray, HeightRequest = 200 }; var swipeItemView = new SwipeItemView(); var swipeItemViewContent = new Grid { BackgroundColor = Colors.White, WidthRequest = 150 }; var customEntry = new CustomEntry { VerticalOptions = LayoutOptions.Center }; swipeItemViewContent.Children.Add(customEntry); swipeItemView.Content = swipeItemViewContent; customSwipeView.RightItems = new SwipeItems { swipeItemView }; layout.Children.Add(instructions); layout.Children.Add(customSwipeView); Content = layout; }
async void OnDeleteSight(object sender, EventArgs args) { SwipeItemView item = sender as SwipeItemView; Sight sightToDelete = item.BindingContext as Sight; ObservableCollection <Sight> sightsCollection = listView.ItemsSource as ObservableCollection <Sight>; if (sightToDelete != null) { bool answer = await DisplayAlert( rm.GetString("warning"), rm.GetString("messageDeleteSight"), rm.GetString("deleteAnyway"), rm.GetString("cancel")); //System.Diagnostics.Debug.WriteLine("Answer: " + answer); if (answer) { await AlmicantaratXF.Views.App.PositionsSightsDB.DeleteSightAsync(sightToDelete); sightsCollection.Remove(sightToDelete); currentPosition.CalculateCelestialPosition(); } } }
void UpdateSwipeItemViewLayout(SwipeItemView swipeItemView) { var swipeItemSize = GetSwipeItemSize(swipeItemView); swipeItemView.Layout(new Rectangle(0, 0, swipeItemSize.Width, swipeItemSize.Height)); }
private void UndoClick(object sender, EventArgs e) { SwipeItemView itemView = (sender as Button).CommandParameter as SwipeItemView; itemView.PristineItem(); }
public Issue10530() { Title = "Issue 10530"; var vm = new Issue10530ViewModel(); BindingContext = vm; var layout = new StackLayout(); var swipeView = new SwipeView(); var swipeViewContent = new Grid { BackgroundColor = Colors.LightGray, HeightRequest = 60 }; var infoLabel = new Label { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center }; infoLabel.SetBinding(Label.TextProperty, "Item.Text"); swipeViewContent.Children.Add(infoLabel); swipeView.Content = swipeViewContent; var swipeItemView = new SwipeItemView(); swipeItemView.SetBinding(IsVisibleProperty, "Item.RetryAvailable"); var swipeItemContent = new Grid { BackgroundColor = Colors.Orange, WidthRequest = 100 }; var swipeItemLabel = new Label { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Text = "Retry", TextColor = Colors.White }; swipeItemContent.Children.Add(swipeItemLabel); swipeItemView.Content = swipeItemContent; swipeView.LeftItems = new SwipeItems { swipeItemView }; layout.Children.Add(swipeView); var changeButton = new Button { Text = "Update Item RetryAvailable" }; layout.Children.Add(changeButton); Content = layout; swipeItemView.Invoked += (sender, args) => { vm.MakeRetryInvisibleCommand.Execute(vm.Item); }; changeButton.Clicked += (sender, args) => { var item = vm.Item; if (item.RetryAvailable) { vm.MakeRetryInvisibleCommand.Execute(vm.Item); } else { vm.MakeRetryVisibleCommand.Execute(vm.Item); } }; vm.MakeRetryVisibleCommand.Execute(vm.Item); }
public SwipeItemViewIsEnabledGallery() { Title = "SwipeItemView IsEnabled Gallery"; var swipeLayout = new StackLayout { Margin = new Thickness(12) }; var instructions = new Label { BackgroundColor = Color.Black, TextColor = Color.White, Text = "RemainOpen is used as SwipeBehaviorOnInvoked, tapping on a SwipeItem will not close it." }; swipeLayout.Children.Add(instructions); var closeButton = new Button { Text = "Close SwipeView" }; swipeLayout.Children.Add(closeButton); var swipeItemContent = new StackLayout(); var monkeyList = new List <string> { "Baboon", "Capuchin Monkey", "Blue Monkey", "Squirrel Monkey", "Golden Lion Tamarin", "Howler Monkey", "Japanese Macaque" }; var monkeyPicker = new Picker { Title = "Select a monkey" }; monkeyPicker.ItemsSource = monkeyList; var monkeyButton = new Button { Text = "Get Selected Monkey" }; monkeyButton.Clicked += (sender, args) => { var selectedMonkey = monkeyPicker.SelectedItem ?? "None"; DisplayAlert("Selected Monkey", $"{selectedMonkey}", "Ok"); }; swipeItemContent.Children.Add(monkeyPicker); swipeItemContent.Children.Add(monkeyButton); var swipeItem = new SwipeItemView { BackgroundColor = Color.White, Content = swipeItemContent }; var swipeItems = new SwipeItems { swipeItem }; swipeItems.SwipeBehaviorOnInvoked = SwipeBehaviorOnInvoked.RemainOpen; swipeItems.Mode = SwipeMode.Reveal; var swipeContent = new Grid { BackgroundColor = Color.Gray }; var swipeLabel = new Label { HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center, Text = "Swipe to Right" }; swipeContent.Children.Add(swipeLabel); var swipeView = new SwipeView { HeightRequest = 120, WidthRequest = 300, LeftItems = swipeItems, Content = swipeContent }; swipeLayout.Children.Add(swipeView); var swipeItemLayout = new StackLayout { Orientation = StackOrientation.Horizontal }; var swipeItemButton = new Button { Text = "Disable SwipeItemView", WidthRequest = 250, VerticalOptions = LayoutOptions.Center }; var swipeItemLabel = new Label { Text = "SwipeItemView is enabled" }; swipeItemLayout.Children.Add(swipeItemButton); swipeItemLayout.Children.Add(swipeItemLabel); swipeLayout.Children.Add(swipeItemLayout); Content = swipeLayout; closeButton.Clicked += (sender, e) => { swipeView.Close(); }; swipeItemButton.Clicked += (sender, args) => { swipeItem.IsEnabled = !swipeItem.IsEnabled; if (swipeItem.IsEnabled) { swipeItemButton.Text = "Disable SwipeItemView"; swipeItemLabel.Text = "SwipeItemView is enabled"; } else { swipeItemButton.Text = "Enable SwipeItemView"; swipeItemLabel.Text = "SwipeItemView is disabled"; } }; }