Android:带有冰淇淋的奇怪按钮布局

标签 android image button background

我在顶部使用这个自定义栏构建了一个布局:

enter image description here

图示的栏包含三个示例按钮(一个在左边,两个在右边),图像背景 (ic_delete) 包含在默认的 android drawable 中。

这是 XML 代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_gravity="center_vertical"
    android:orientation="vertical" >

    <RelativeLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="44dp"
        android:background="@drawable/bg_gradient_top_bar" >

        <Button
            android:id="@+id/button_swype_left"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="3dp"
            android:layout_marginBottom="3dp"
            android:background="@android:drawable/ic_delete"
            android:text="" />

        <ImageView
            android:id="@+id/bar1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="1dp"
            android:layout_marginRight="1dp"
            android:layout_marginTop="1dp"
            android:layout_toRightOf="@+id/button_swype_left"
            android:maxWidth="1dp"
            android:src="@android:drawable/status_bar_item_app_background" />

        <TextView
            android:id="@+id/municipality"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_centerVertical="true"
            android:layout_toRightOf="@+id/bar1"
            android:layout_toLeftOf="@+id/bar2"
            android:layout_marginLeft="3dp"
            android:layout_marginRight="3dp"
            android:gravity="center"
            android:text="Some Text"
            android:textColor="#FFF"
            android:textSize="16dp"
            android:typeface="sans" />

        <ImageView
            android:id="@+id/bar2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="1dp"
            android:layout_marginLeft="1dp"
            android:layout_marginTop="1dp"
            android:maxWidth="1dp"
            android:layout_toLeftOf="@+id/button_menu"
            android:src="@android:drawable/status_bar_item_app_background" />

        <Button
            android:id="@+id/button_menu"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentTop="true"
            android:layout_toLeftOf="@+id/bar3"
            android:layout_margin="3dp"
            android:background="@android:drawable/ic_delete" />

        <ImageView
            android:id="@+id/bar3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginBottom="1dp"
            android:layout_marginTop="1dp"
            android:maxWidth="1dp"
            android:layout_toLeftOf="@+id/button_swype_right"
            android:src="@android:drawable/status_bar_item_app_background" />

        <Button
            android:id="@+id/button_swype_right"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="3dp"
            android:layout_marginBottom="3dp"
            android:background="@android:drawable/ic_delete"
            android:text="" />

    </RelativeLayout>

    <LinearLayout ... >

        <ListView .... />
    </LinearLayout>

</LinearLayout>

当我在 Android 版本 < 4.0 (API 14) 的设备上试用我的应用程序时一切正常,如下所示:

Bar in Android verion < 4.0 (API 14 )

但在 Android 版本 >= 4.0(API 14、15、16)的设备中,按钮的宽度尺寸很奇怪:

Bar in Android version >= 4.0 (API 14, 15, 16)

怎么了?

最佳答案

看起来 android 系统图像的大小在这些版本之间发生了变化,特别是我的意思是宽度 @android:drawable/ic_delete,请尝试使用您制作的自定义图像

关于Android:带有冰淇淋的奇怪按钮布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11826550/

相关文章:

android - 如何获取有关设备的声音芯片或声音功能的信息?

android - ViewPager2,获取当前页面viewholder

iOS Animate 使用手势将 ImageView 从屏幕外滑动到屏幕上

android - 类似 WhatsApp 的多行 EditText 布局和旁边的按钮

javascript - 使用 JS 更改 Meteor 中的按钮文本

html - 输入按钮保持未格式化

android - 如何在两个图像之间对齐 TextView

image - FFmpeg - 将两个图像 (.png) 合并到视频 (.mp4) 不起作用

image - 显示来自 Firebase 存储的图像时出现 404 错误

java - Android 与 JSON 的致命连接