1

我正在进行设计并对其进行测试:

  • 银河 Nexus 3
  • 三星Galaxy S3

似乎 S3 在一些相关布局命令中表现不佳,例如:

  • Layout_toStartOf
  • Layout_toEndOf

简化问题如下:

代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/white" >

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"
    android:text="Button" />

<Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@+id/button1"
    android:layout_toEndOf="@id/button1"
    android:text="Button" />

</RelativeLayout>

图片

  1. 在编辑器和 Nexus 3 上
  2. 在三星 S3 上

在编辑器和 Nexus 3 中正常工作

在三星 S3 上无法正常工作

由于我经常使用缩放和相互关联的图片,因此此功能非常重要。

如果有人可以与我分享他们的经验,我将不胜感激。

谢谢

编辑:错别字

4

2 回答 2

1

首先,没有诸如 android:layout_toEndOf="@id/button1".

相对布局只有 2 个资源可以根据任何小部件的 id 进行排列toLeftOftoRightOf检查您的代码。

编辑:

toEndOf并且toStartOf最近在 API 级别 17 即 android 4.2 版本中添加,因此在较低版本的 android 中将找不到

于 2013-02-21T10:18:53.130 回答
0

遇到过同样的问题:

我使用 ToStartOf 和 toEndOf 将固定大小的图形与缩放的 1px 宽的图形对齐。

[图形 1] <-- [图形 2(1px 缩放到 20dp)] <-- [图形 3]

当您从右到左构建它时,它们不会正确对齐。当您说 toLeftOf 缩放图形时,它将使新图形位于图片原始大小的左侧,而不是缩放图片的末尾-因此重叠。

[图[hic 1 图]phic 2][图 3]

一种解决方法是从左到右构建图形,将所有元素作为一个模块放在相对布局中,并将不同的模块相互对齐。

感谢有关具有 ToStartOf 和 ToEndOf 函数的 API 级别的信息!

于 2013-02-21T11:12:48.770 回答