问题标签 [xamarin.forms-styles]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
530 浏览

xamarin - 在 Xamarin Forms 中,如何在网格单元格中调整图像的大小?

无法弄清楚如何使图像小于网格中的容器。

即,如果我希望正方形图像是正方形网格单元格大小的 50% 并在单元格内居中,我该怎么做?

0 投票
5 回答
5273 浏览

xaml - 在样式中设置 Grid RowDefinitions/ColumnDefinitions 属性

假设您有 2 个或更多共享相同结构的网格(行/列计数和属性相等)。

是否可以创建Style并设置RowDefinitions / ColumnDefinitions

我已经试过了。但是当应用程序尝试解析 xaml 时出现此异常:

Xamarin.Forms.Xaml.XamlParseException:位置 14:9。属性值为 null 或不是 IEnumerable

我的源代码:

异常中的位置 14:9指的是第一个<RowDefinition />标签。

0 投票
1 回答
27 浏览

xamarin - 如何为数字分配更多空间

这是我创建的 XAML 代码:

当我运行代码时,窗口的数据输入区域仅宽到显示一位数字。有没有办法可以扩展它,这样我就可以输入三位数?

0 投票
1 回答
462 浏览

xamarin - 如何使用左右滑动来编写 Xamarin.Forms 初始屏幕?

我已经看到一些应用程序以带有下一步按钮的初始屏幕启动,当单击该按钮时,另一个页面会从右侧滚动。在这些页面上通常有一个下一个或后退按钮,可让用户返回到第一个屏幕或继续到下一个屏幕。

我在 Xamarin 示例中没有看到有关如何执行此操作的任何内容。

如果有人能提供一个例子或给我一些关于我如何做到这一点的建议,我将不胜感激。

谢谢

0 投票
1 回答
55 浏览

xamarin - 如何在 TableView 中复制 iOS 设置页面上评论区的外观?

我想在我的设置页面中添加评论。类似于 iOS 设置的“设置”>“Wi-Fi”页面上“要求加入网络”下方的评论区域。

谁能建议我如何做到这一点以及如何使用动态键入,以便当用户更改字体大小时,评论区域会更改以匹配 iOS 设置中的内容?

请注意,如果需要,我可以使用 iOS 渲染器。目前我只关心 iOS 解决方案。

非常感谢

0 投票
1 回答
833 浏览

xamarin - 为什么我在 StackLayout 中的文本没有环绕?

我有这段代码出现在<TableSection>

当它显示时,我看到以下文字:

单击类别组,然后选择

其余的被切断。

我也试过这个,它是一样的:

谁能告诉我我可能做错了什么?

0 投票
1 回答
172 浏览

xamarin - 如何在 C# 中将 ViewCell、Grid 和 Label 添加为一个类?

我有这个代码:

现在它是在 XAML 中实现的,但我需要在 C# 中实现,并且能够将文本消息(当前为 ABC)和高度(50)设置为参数。

有人可以就我如何将其实现为一个类提供一些建议,然后我可以将其添加到我的应用程序中:

0 投票
1 回答
534 浏览

xamarin.forms - 如何在 Xamarin Forms 中更改 UWP 应用的键盘布局?

我正在开发要在 Windows (UWP) 上部署的 Xamarin Forms 应用程序。我正在尝试解决的当前问题是在“条目”上设置键盘布局。根据文档,我必须做的唯一更改是在 Entry xaml 代码中添加一个“键盘”属性,如下所示:

这在 Windows Mobile Emulator 中确实可以正常工作,并且只要我单击该条目,键盘就会发生变化。但是,当我在 Surface Pro 平板电脑 (UWP) 上运行项目时,键盘的布局根本没有改变。

在此处输入图像描述

0 投票
5 回答
14136 浏览

android - 按钮文本始终以大写形式显示

在我的 xamarin 表单中,项目按钮文本始终以大写格式显示。
但我在 xaml 中提供大写和小写字母。当我构建解决方案时,所有字母都更改为大写。

0 投票
1 回答
421 浏览

memory-leaks - Xamarin.Forms 样式导致 WeakReference 泄漏

我花了很多时间试图在 Android 上的 Xamarin.Forms 应用程序中追踪内存泄漏。在经历了很多死胡同和虚假黎明之后,我想我可能遇到了导致问题的东西。

使用 Xamarin Profiler,我可以看到,一旦我创建了一个 Style 并将其应用于控件(或者实际上只是一个隐式样式),我们就会得到 Multiple WeakReferences 保持“活动” - 即没有垃圾收集。

请注意,我假设它们引用的对象已被 GC 处理(因为对对象的引用是weak),但 WeakReferences本身仍然存在。

现在当然 WeakReferences 很小,我知道 - 但是当您在页面推送/弹出的每次迭代中创建数百个时,内存就会增加,我们就会有严重的泄漏。

这是详细信息。使用 Xamarin.Forms 2.3.4.270(我们尚未升级,因为我们想保留已知问题!)在 Android - 物理设备上运行。

应用程序.xaml:

页面 XAML:

当我导航到上述页面并返回 3 次时,我们创建了以下 WeakReference(和相关)类 - 下面的屏幕截图来自 Profiler 快照。

请注意,我们有 55 个弱引用。深入了解这些节目:

有趣的是,这些 WeakReference 似乎是作为 Behavior 和 Trigger 附加的一部分创建的。查看顶部的调用树给出:

因此,WeakReference 似乎是作为设置 BindableObject 的值和样式的后续设置的一部分而创建的。

而且似乎 WeakReference 仍在内存中并被某些东西引用 - 行为集合?

使用 Profiler,我可以看到我们没有剩余未 GC 的标签。它似乎在主题/行为/触发器处理中。

我还没有查看 GitHub 上的 Xamarin.Forms 代码 - 这可能是我的下一步行动。

有没有人观察到这一点或得到解决方案?