【问题标题】:Android placing buttons depending on the backgroundAndroid根据背景放置按钮
【发布时间】:2014-04-08 16:08:15
【问题描述】:

基本上我正在制作一个用于搜索项目的应用程序。所以我有一个背景,上面有物品/东西。您必须单击与获胜相关的项目。问题是,我不知道如何使它支持所有设备。我目前正在使用相对布局。我必须为每个分辨率制作不同的布局还是有更简单的方法来处理这个问题?我目前以这种方式放置按钮:

<Button
             android:id="@+id/xxx"
             style="?android:attr/buttonStyleSmall"
             android:layout_width="120dp"
             android:layout_height="40dp"
             android:layout_alignParentBottom="true"
             android:layout_alignParentRight="true"
             android:layout_marginBottom = "25dp"
             android:layout_marginRight = "85dp" />

在项目的顶部。

即使我使用正确的分辨率进行编程,有时左/右/上/下也会有轻微的偏差。 (我确实禁用了操作栏,但在 xml 中它仍然显示)。

额外信息:

人们似乎不明白我的问题是什么。我基本上有森林的背景。我希望用户点击我森林背景上的花朵。所以我在花的位置放了一个按钮,使按钮不可见。因此,如果人们点击花朵,它会给出一个“正确”的标志或其他东西。但问题是,如果我让按钮重叠在花朵上,例如它可以在我的手机上使用,那么按钮不会重叠在标签上的同一位置,它会稍微偏离。

【问题讨论】:

  • 用有限的信息很难说。如果你想要一个网格,你可以做一个包含多个包含许多按钮的水平线性布局的垂直线性布局。您甚至可以使用 ImageButtons 并将“项目/东西”的图片直接放在按钮上。

标签: android layout background resolution device


【解决方案1】:

我不确定我是否完全理解你在做什么,但你可以尝试决定你的项目与屏幕尺寸的比例,这样你就可以使用 WindowManager 类创建将获取设备屏幕尺寸尺寸的函数,并且然后假设您想要 1% 的宽度和高度,因此将两个维度分开并将值应用于您的项目。

【讨论】:

    【解决方案2】:

    我认为您可以使用回收视图。 试试看这个,我认为这很有帮助: RecyclerView + CardView

    【讨论】:

    • 虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接的答案可能会失效。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-16
    • 1970-01-01
    • 2020-08-14
    • 1970-01-01
    • 2014-04-09
    • 2011-02-19
    • 2012-09-24
    相关资源
    最近更新 更多