MaterialMenuButton - on click application got crash in both Android and iOS
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 45/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Đình trệ
- Công nghệ
- csharp
- Lĩnh vực
- mobile-dev
Hướng nghiên cứu
Tái hiện lỗi crash với MaterialMenuButton được hiển thị trong MainPage.xaml, sau đó kiểm tra XF.Material/UI/MaterialMenuButton.cs tại OnViewTouch quanh dòng 131 và lời gọi từ OnButtonClicked. Xác nhận rằng Choices đã được điền sẽ hiển thị menu thay vì phát sinh ngoại lệ được báo cáo trên cả Android và iOS.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
🐛 Bug Report
Expected behavior
- It should work properly and show a popup with menu items.
Reproduction steps
- Add MaterialMenuButton on the page and when clicking on the button it crashes the app.
MainPage.xaml
<material:MaterialMenuButton
Grid.Row="0" Grid.Column="1"
ButtonType="Elevated"
Image="dots_circle"
HorizontalOptions="End"
HeightRequest="45"
WidthRequest="45"
Choices="{Binding Actions}"
Command="{Binding ActionSelectCommand}"
BackgroundColor="Transparent"/>
MainPageViewModel.cs
public MainPageViewModel()
{
ObservableCollection<MaterialMenuItem> actions = new ObservableCollection<MaterialMenuItem>();
actions.Add(new MaterialMenuItem() { Text = "Details" });
actions.Add(new MaterialMenuItem() { Text = "Edit" });
actions.Add(new MaterialMenuItem() { Text = "Upload Document" });
actions.Add(new MaterialMenuItem() { Text = "Add Project" });
Actions = new ObservableCollection<MaterialMenuItem>(actions);
}
private ObservableCollection<MaterialMenuItem> _actions { get; set; }
public ObservableCollection<MaterialMenuItem> Actions
{
get => _actions;
set { _actions = value; OnPropertyChanged(nameof(Actions)); }
}
Configuration
- Visual Studio for Mac 2022 Version 17.0.1 (build 72)
Version: 1.x
- XF.Material - 1.8.0
Platform:
- 📱 iOS
- 🤖 Android
- 🏁 WPF
- 🌎 UWP
- 🍎 MacOS
- 📺 tvOS
- 🐒 Xamarin.Forms
Exception Message: Cannot show menu, property Choices is null or has no items
Stack Trace
at XF.Material.Forms.UI.MaterialMenuButton.OnViewTouch (System.Double x, System.Double y) [0x0002c] in Z:\Documents\OpenSource\XF-Material-Library\XF.Material\UI\MaterialMenuButton.cs:131
at XF.Material.iOS.Renderers.MaterialMenuRenderer.OnClick () [0x0001b] in Z:\Documents\OpenSource\XF-Material-Library\XF.Material\Platforms\Ios\Renderers\MaterialMenuRenderer.cs:26
at Xamarin.Forms.Command+<>c__DisplayClass4_0.<.ctor>b__0 (System.Object o) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Command.cs:74
at Xamarin.Forms.Command.Execute (System.Object parameter) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Command.cs:112
at XF.Material.Forms.UI.MaterialIconButton.OnButtonClicked (System.Boolean handled) [0x00017] in Z:\Documents\OpenSource\XF-Material-Library\XF.Material\UI\MaterialIconButton.xaml.cs:145
at XF.Material.Forms.UI.MaterialMenuButton.OnButtonClicked (System.Boolean handled) [0x00000] in Z:\Documents\OpenSource\XF-Material-Library\XF.Material\UI\MaterialMenuButton.cs:120
at XF.Material.Forms.UI.MaterialIconButton.<.ctor>b__13_0 () [0x00000] in Z:\Documents\OpenSource\XF-Material-Library\XF.Material\UI\MaterialIconButton.xaml.cs:47
at Xamarin.Forms.Command+<>c__DisplayClass4_0.<.ctor>b__0 (System.Object o) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Command.cs:74
at Xamarin.Forms.Command.Execute (System.Object parameter) [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Command.cs:112
at Xamarin.Forms.ButtonElement.ElementClicked (Xamarin.Forms.VisualElement visualElement, Xamarin.Forms.Internals.IButtonElement ButtonElementManager) [0x00008] in D:\a\1\s\Xamarin.Forms.Core\ButtonElement.cs:60
at Xamarin.Forms.Button.SendClicked () [0x00000] in D:\a\1\s\Xamarin.Forms.Core\Button.cs:173
at Xamarin.Forms.Platform.iOS.ButtonElementManager.OnButtonTouchUpInside (Xamarin.Forms.IButtonController element) [0x00009] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ButtonElementManager.cs:86
at Xamarin.Forms.Platform.iOS.ButtonRenderer.OnButtonTouchUpInside (System.Object sender, System.EventArgs eventArgs) [0x00000] in D:\a\1\s\Xamarin.Forms.Platform.iOS\Renderers\ButtonRenderer.cs:189
at UIKit.UIControlEventProxy.Activated () [0x00004] in /Users/builder/azdo/_work/1/s/xamarin-macios/src/UIKit/UIControl.cs:38
--- End of stack trace from previous location where exception was thrown ---
at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain(int,string[],intptr,intptr)
at UIKit.UIApplication.Main (System.String[] args, System.String principalClassName, System.String delegateClassName) [0x00013] in /Users/builder/azdo/_work/1/s/xamarin-macios/src/UIKit/UIApplication.cs:75
at solarcrm.Application.Main (System.String[] args) [0x0001b] in /Users/divyeshbhatt/Documents/sourcetree/APS/src/solarcrm.Mobile.iOS/Main.cs:20
- Ngôn ngữ chính
- C#
- Star
- 633
- Fork
- 150
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của Baseflow/XF-Material-Library
-
.Net Maui SupportĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 20/100
Baseflow/XF-Material-Library#458 · 1 bình luận ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 50/100
Baseflow/XF-Material-Library#457 · 1 bình luận ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 48/100
Baseflow/XF-Material-Library#456 ·
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 35/100
Baseflow/XF-Material-Library#454 ·
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 58/100
Baseflow/XF-Material-Library#453 ·
Tất cả issue của Baseflow/XF-Material-Library
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
fluentassertions/fluentassertions#3353 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
-
Độ khó 2/5 Nửa ngày Mức phù hợp với người mới 78/100
unoplatform/uno#24769 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
AvaloniaUI/Avalonia#22323 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100
microsoft/onnxruntime-genai#2633 ·
Maintainer thường phản hồi trong vòng 1 ngày