Tag: xamarin.forms

在Xamarin.Forms UWP项目中激烈标题栏和标签之间的空白区域

我几乎是Xamarin.Forms的新手 ,我正在开发一个相当简单的跨平台应用程序。 该应用在Android中显示足够好,但在UWP中有一个愚蠢的空白区域。 该项目包含一个带有4个NavigationPages的TabbedPage,以便在其中推送和弹出页面。 在深入研究UWP平台细节后,我能够改变标签的样式。 我一直在寻找3天的解决方案,这让我发疯了。 到目前为止我找到的唯一解决方案(在VS 2015的Live Visual Tree的帮助下)是将Visibility属性从CommandBar更改为“Collapsed” (如第3张附图所示)。 但这不是解决方案,因为它只在运行时消失。 有人可以帮忙吗? 提前致谢。 Android View , UWP View , Live Visual Tree 编辑:我的MainPage.xaml代码如下:

Xamarin:windows uwp的分段控制

如何在Windows UWP中为分段控制创建自定义渲染器。 我按照这个链接自定义渲染IOS和android中的分段控件。 但我找不到Windows UWP的任何东西。 任何人都可以在此提供任何资源,或者是否有任何替代方法来执行此操作类似于Windows UWP中的分段控制。

如何在Listview中设置焦点? Xamarin表格

我有一个listview,每行包含一个标签和一个条目。 如果点击了一行,如何为条目设置焦点。 我的列表视图是动态生成的。 void selected(object sender, SelectedItemChangedEventArgs e) { if (e.SelectedItem == null) { return; //ItemSelected is called on deselection, which results in SelectedItem being set to null } TestReading item = (TestReading)e.SelectedItem; //comment out if you want to keep selections ListView lst = (ListView)sender; lst.SelectedItem = null; } 我希望每当用户点击特定行而不管任何位置时都会显示软键盘。

Xamarin ContentView /查看生命周期

版 Xamarin.Android 8.2 Xamarin.Forms 2.5 简短的问题 我如何或者应该让ContentView知道其包含页面的生命周期状态(例如,出现,消失,睡眠) 很长的问题 我正在学习如何创建可重用的Xamarin ContentView。 我决定创建一个控件 ,它将一个接一个地显示其子标签。 问题是我不知道如何停止切换内容的后台计时器 样品 用法 Hello Hola 履行 namespace XamarinStart.Views { [XamlCompilation(XamlCompilationOptions.Compile)] [ContentProperty(“LabelContainer”)] public partial class LabelCarousel : ContentView { [Browsable(true), EditorBrowsable(EditorBrowsableState.Always)] [Description(“Labels”), Category(“Data”)] public List LabelContainer { get; } = new List(); private int _index = 0; private Timer _timer = new Timer(2000); public […]

在Xamarin中隐藏软键盘

在Xamarin.forms便携式表单项目中聚焦Entry时,如何隐藏软键盘以显示? 我假设我们必须为此编写特定于平台的渲染器,但以下内容不起作用: 我创建自己的入口子类: public class MyExtendedEntry : Entry { } 然后在xamarin.android项目中我的渲染器: public class MyExtendedEntryRenderer : EntryRenderer { protected override void OnElementChanged(ElementChangedEventArgs e) { base.OnElementChanged(e); if (Control != null) { new Handler().Post(delegate { var imm = (InputMethodManager)Control.Context.GetSystemService(Context.InputMethodService); var result = imm.HideSoftInputFromWindow(Control.WindowToken, 0); }); } } } 按预期调用OnElementChanged ,当使用Handler.Post()我也得到一个WindowToken而不是null。 可悲的是, HideSoftInputFromWindow的返回值始终为false,单击条目时软键盘仍会显示。

Xamarin的优点和缺点Vis访问其他框架

我是一名C#开发人员,负责为我们的一个项目开发Android本机应用程序的项目,其C#中的逻辑引擎作为REST服务公开。 当前项目有一个使用Html5和JS的Web版本以及使用WPF的桌面。 我们有很好的Html5,Angular JS开发人员可供我们使用,现在经过一些研究来了解我需要做什么才能开始,以下是我的理解: 学习用于原生Android开发的Java / Python ,它与其他选项有一些学习曲线 使用像Cordova, Titanium这样的框架,它们能够将HTML5,JS代码转换为原生Android和IOS应用程序 现在我遇到了Xamarin,它可以帮助C#开发人员开发我们可以快速采用的Android和IOS应用程序,但是我无法找到令人信服的答案,这些问题基于我对复杂性的理解。项目要求,因为它们在一段时间内发生变化: Xamarin生成的应用程序在真正的Android系统中有任何性能问题吗? Xamarin应用程序是专为Android开发时优化的还是我们还有一个共同的分母代码? Xamarin是否支持大多数复杂UIfunction,如地图,网格,默认情况下可在原生Android上使用? Xamarin如何看待像Phonegap这样的JS类似的混合系统,哪一个是更好,更可采用的框架 任何建议/指针都会很棒,这可以帮助我们做出明智的决定。 不希望继续使用框架,而不了解可能使未来变得困难的主要限制或障碍

在Xamarin.Forms上居中一个Activityindicator

我有上面的代码XAML,我试图在单击Button后将ActivityIndi​​cator放在页面的中心。 我尝试使用网络的例子,但没有成功。 这是代码的开头: public partial class LoginPage : ContentPage { public LoginPage() { IsBusy = false; InitializeComponent(); int contadorErroLogin = 0; string result = null; BtnLogin.Clicked += async (sender, e) => { IsBusy = true; 当启动IsBusy = false但屏幕似乎是真的。

是否可以在没有CancellationToken的情况下取消C#任务?

我需要取消返回任务的API调用,但它不会将CancellationToken作为参数,我不能添加一个。 我该如何取消该任务? 在这种特殊情况下,我正在使用带有Geocoder对象的Xamarin.Forms。 IEnumerable positions = await geo.GetPositionsForAddressAsync(address); 这个电话有时需要很长时间。 对于我的一些用例,用户可以只导航到另一个屏幕,并且不再需要该任务的结果。 我还担心我的应用程序会进入hibernate状态,并且没有停止长时间运行的任务,或者任务完成并且需要不再有效的代码。

内存泄漏处理Xamarin.Forms

我在我的应用程序中有一个内存泄漏问题,我用Xamarin.Forms创建。 我的应用程序包含带有图像的ListView。 如果我点击一个项目并返回ListPage,我可以在“输出”窗口中看到内存耗尽。 我试过在我的ContentPage的OnDisappearing()中调用GC.Collect() 。 我在Android项目中看到了base.Dispose() 。 但我不知道如何使用它。 ArticleListPage.xaml

具有Bindable属性的自定义视图在Xamarin.Forms SAP上无法正确绑定

我有一个复选框,它应该触发按钮的IsEnabled事件。 但不知何故,应该这样做的命令永远不会被正确绑定并因此被执行。 这是CheckBox.xaml.cs(控件)中的可绑定属性: public static readonly BindableProperty CheckBoxCommandProperty = BindableProperty.Create( checkbox => checkbox.CheckBoxCommand, null, propertyChanged: (bindable, oldValue, newValue) => { CheckBox checkbox = (CheckBox)bindable; EventHandler eventHandler = checkbox.CheckedChanged; if (eventHandler != null) { eventHandler(checkbox, checkbox.IsChecked); } }); public event EventHandler CheckedChanged; public ICommand CheckBoxCommand { get { return (ICommand)GetValue(CheckBoxCommandProperty); } set { SetValue(CheckBoxCommandProperty, value); } […]