1

我快要崩溃了。我正在尝试为多种设备开发应用程序。该应用程序在所有设备上的外观应该几乎相同。我试图创建这样的布局:

  • 首先,我在三星 Galaxy S Plus 设备的标准布局文件夹中创建了布局,因为这是我拥有的唯一硬件设备
  • 布局在设备上看起来不错
  • 之后我拿了一个布局文件并切换了可用的虚拟设备,例如 2.7in QVGA...5.4in FWVGA...7in WSVGA...
  • 每次切换虚拟设备并且布局看起来不好时,我都会锁定限定符最小的屏幕宽度屏幕尺寸
  • 我进行了更改,以便布局看起来适合该特定虚拟设备并保存它。
  • Xamarin 创建一个新文件夹,如layout-sw480dp-large. 在那个文件夹中,我可以看到最近更改的文件
  • 我已经为标准布局文件夹中的所有布局文件和所有虚拟设备完成了此操作。
  • 回到标准布局文件夹,我检查所有设备的所有布局文件。一切看起来都很棒。
  • 我在三星 Galaxy S3 上测试了该应用程序,布局看起来很糟糕,文本视图不在正确的位置,图像视图不在正确的位置等。
  • 所以回到 Xamarin 工作室,我检查了所有布局文件夹和每个文件。例如,文件夹layout-sw480dp-xlarge中的布局文件看起来不太好。
  • 我更改了该文件,但随后发生了一些奇怪的事情:位于包含限定符的布局文件夹中的所有同名文件xlarge也被更改(参见屏幕截图)。
  • 我认为布局文件夹中的更改不会导致其他文件夹中的更改。这是 Xamarin 的错误吗?

所以我有3个问题:

  1. 这种更改布局文件的奇怪行为是 xamarin 的错误吗?
  2. 为不同设备创建布局的最佳方法是什么(请实用建议,我知道支持多个屏幕的站点)
  3. 如何使用 Xamarin 为三星 S3 创建布局,如何在 xamarin 中创建模拟三星 S3 的虚拟设备

非常感谢。

Xamarin Studio 截图

4

2 回答 2

0

如果您在 Xamarin Studio 中打开 axml 文件,您会发现两个选项图形表示/脚本。您可以通过更改备用布局在布局之间切换,在 axml 文件的左上角附近可用切换。对于自定义虚拟设备创建设置与您想要的设备相同的配置并创建 AVD

于 2014-12-02T08:23:30.800 回答
0

我已经通知 xamarin 这个问题。[链接] ( https://bugzilla.xamarin.com/show_bug.cgi?id=13705 )。

我为多个设备创建布局的方式:

  1. 在标准布局文件夹中创建布局(我使用普通的 mdpi 设备)
  2. 创建所有布局后,我将它们复制到 xamarin 之外的另一个文件夹并将 .axml 重命名为 .xml
  3. 我使用 eclipse 在其特定文件夹中创建替代布局
  4. 将替代布局文件夹中的所有文件从 .xml 重命名为 .axml
  5. 在 xamarin 工作室中创建替代布局文件夹并导入特定文件
  6. 在真实的硬件设备上运行和测试它们

这对我有用。

于 2013-08-28T06:57:32.197 回答