【问题标题】:Text on button loses center alignment on changing of IsEnabled按钮上的文本在更改 IsEnabled 时失去中心对齐
【发布时间】:2014-12-20 00:46:20
【问题描述】:

我正在使用 Xamarin.Forms 并在(非常慢的)Android 模拟器中进行测试。

当我开始登录过程时,我会显示一个 ActivityIndi​​cator,然后将一个按钮设置为 IsEnabled="false"

这正常工作,我不能再按下按钮,但文本失去了居中。它向左走。

例如

这是加载按钮(一切都正确)

接下来是 IsEnabled 设置为 False 时。 (请注意,它看起来更暗,因为我有一个 StackLayout 使屏幕变灰,但无论如何它对文本对齐没有影响。)但是你可以看到它的对齐丢失。

现在是 IsEnabled 设置回 true。

这里是 XAML。

<Button Text="Login" BackgroundColor="#FFCF3838" HorizontalOptions="Fill" Grid.Column="1" 
 Grid.Row="0" BorderWidth="1" BorderColor="White" 
 IsEnabled="{Binding Path=LoginViewModel.IsLoginEnabled}"  Command="{Binding LoginCommand}"/>

仅供参考 - 使用 MVVMLight 但我认为这没有任何区别。

【问题讨论】:

  • 这是一个已知问题:/
  • 目前有什么解决方法吗?
  • 2 年后仍然遇到这个问题。
  • @LukeAlderton 据我所知,这个问题很久以前就已经解决了。你的按钮或标签上有 Horizo​​ntalTextAlignment="Center" 吗?
  • 我刚试了,没有效果。

标签: c# android xaml xamarin.forms


【解决方案1】:

这是Androidv1.2.2xButtonalignment问题v1.2.2x强>Xamarin.Forms。可以在here 找到如何触发此错误的小示例。

我刚刚在 Xamarin.Forms v1.2.3.6257 上重新测试过,问题仍然存在。

Xamarin 已经意识到了这个问题,而且目前尽管已经提出了一些变通办法,但这些都没有完全奏效。

即将发布1.3 版。至于是否会针对该版本进行修复是另一个问题。

1.3 版。技术预览可以看到here 并为任何想尝试这个的人提供说明。

如果你这样做了,请在另一台机器上尝试,因为他们的 v.1.2.3 预发布 v4 给我带来了几个错误,其中回滚并不像应有的那么容易去过。

如果有人有 v1.3 预览版,如果他们可以从here 运行示例,并让我们知道当前在 上的结果,那将会很有趣v1.3 ?

解决此问题的唯一其他方法是将 Button 替换为 custom renderer 以使用不同的 Button 控件它的位置。

【讨论】:

  • 我在 Lollipop 上看到了这个,但是当我恢复到 KitKat 时它就消失了。
  • 我仍然在 Xamarin.Forms 4.0 上得到这个:/
猜你喜欢
  • 2011-05-10
  • 2016-11-10
  • 1970-01-01
  • 2011-12-09
  • 2015-05-16
  • 2019-12-21
  • 2020-08-23
  • 1970-01-01
  • 2011-07-13
相关资源
最近更新 更多