我正在使用Xamarin的Monkey.Robotics组件在Xamarin中构建一个新的BLE应用程序。我使用这个Heart Rate示例作为起点。但是,我需要一个 * Jmeter 板 * 类型的主页,在那里显示接收到的特征。然后,我希望在底部有一个 “添加设备” 按钮,用于触发扫描和配对过程。
我现在有一个ObservableCollection<T>
类,用来把所有的设备添加到一个列表视图中。我真的希望所有的功能都在一个页面上,这样我就不会把不同的状态复杂化,比如“以前配对过”,“想配对一个新设备”和“从来没有配对过”。我最好使用DisplayActionSheet。
这是给出的例子
var actionButton1 = new Button { Text = "ActionSheet Simple" };
actionButton1.Clicked += async (sender, e) => {
var action = await DisplayActionSheet ("ActionSheet: Send to?", "Cancel", null, "Email", "Twitter", "Facebook");
Debug.WriteLine("Action: " + action); // writes the selected button label to the console
};
我是否可以通过 ObservableCollection 使用来自扫描的动态数据来填充它?
以下是我目前的安排:
this.devices = new ObservableCollection<IDevice> ();
listView.ItemsSource = devices;
adapter.DeviceDiscovered += (object sender, DeviceDiscoveredEventArgs e) => {
Device.BeginInvokeOnMainThread(() => {
devices.Add (e.Device);
});
};
如果能就我如何实现这一点提出建议(以及这是否可能,或者有更好的方法实现这一点?),同时仍然保持DisplayActionSheet的正确结构,我将不胜感激。
2条答案
按热度按时间ux6nzvsh1#
DisplayActionSheet
接受params string[] list
,所以下面的结构有效!ipakzgxi2#
//显示操作表. LCA是一个模型类型列表