Xamarin Studio中Android替代布局的问题

时间:2013-08-01 09:13:50

标签: android android-layout layout xamarin

我几乎要翻身了。我正在尝试为多个设备开发应用程序。该应用程序在所有设备上应该看起来几乎相同。我尝试创建这样的布局:

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

所以我有3个问题:

  1. 改变布局文件的这种奇怪的行为是否是xamarin的错误?
  2. 为不同设备创建布局的最佳方法是什么(请提供实用建议,我知道支持多个屏幕的网站)
  3. 如何使用Xamarin为Samsung S3创建布局,如何在xamarin中创建模拟Samsung S3的虚拟设备
  4. 非常感谢。

    Screenshot of Xamarin Studio

2 个答案:

答案 0 :(得分:0)

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

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

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

答案 1 :(得分:0)

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