Android:为什么我的按钮不填充父级?

标签 android background imagebutton navbar

enter image description here

我不明白为什么我的图标是这样格式化的。他们被设置为填充 parent 但不是。我正在尝试制作底部导航栏。我想要最后两个按钮具有的漂亮渐变,但按钮中的图像似乎从未正确格式化。如果我去掉布局中的背景,它们的格式会更好,但不是我想要的。我正在为酒吧建模:enter image description here 我认为最好将所有 Imagebtns 设置为具有 @null 背景,然后将深色渐变设置为父级中的背景,并将灰色渐变设置为用户在该页面上时 Imagebtn 中的背景。 我不确定尝试完成最终游戏的最佳方式。这是我的 xml:

    <LinearLayout android:id="@+id/navbar"
    android:layout_alignParentBottom="true"
    android:layout_width="fill_parent"  android:background="@drawable/navbackground"
    android:layout_height="60dip" android:layout_weight="1"
    android:orientation="horizontal">

    <ImageButton android:layout_height="fill_parent" android:id="@+id/navhomebtn" android:enabled="false" 
        android:textColor="#FFF" android:src="@drawable/homeiconsel" android:background="@null"
        android:layout_weight=".25" android:layout_width="0dip" />

    <ImageButton android:layout_height="fill_parent" android:id="@+id/navsearchbtn"
        android:textColor="#FFF" android:background="#FFF" 
        android:text="Search" android:layout_weight=".25" android:src="@drawable/searchicon" 
        android:layout_width="0dip" />

    <ImageButton android:layout_height="fill_parent" android:id="@+id/navfavbtn"
        android:textColor="#FFF" android:background="@drawable/navbuttons"
        android:src="@drawable/favoriteicon"  android:layout_weight=".25"
        android:layout_width="0dip" />
    <ImageButton android:layout_height="fill_parent" android:id="@+id/navloanbtn"
        android:textColor="#FFF" android:background="@drawable/navbuttons"
        android:src="@drawable/loanicon" android:layout_weight=".25"
        android:layout_width="0dip" />

</LinearLayout>

注意:粉红色背景只是我在 Google Dev Resources 玩弄的东西 here ,我会将其更改为较暗的渐变,但我想突出显示问题。

最佳答案

我拿了你的 xml 并替换了我自己的图像。 一切似乎都正常。 也许无论您的布局嵌套在什么地方都会影响事物。

截图和代码如下:

<LinearLayout android:id="@+id/navbar"
        android:layout_alignParentBottom="true" android:layout_width="fill_parent"
        android:background="@drawable/icon" android:layout_height="60dip"
        android:layout_weight="1" android:orientation="horizontal">

        <ImageButton android:layout_height="fill_parent"
            android:id="@+id/navhomebtn" android:enabled="false"
            android:textColor="#FFF" android:src="@drawable/heart"
            android:background="@null" android:layout_weight=".25"
            android:layout_width="0dip" />

        <ImageButton android:layout_height="fill_parent"
            android:id="@+id/navsearchbtn" android:textColor="#FFF"
            android:background="#FFF" android:text="Search"
            android:layout_weight=".25" android:src="@drawable/heart"
            android:layout_width="0dip" />

        <ImageButton android:layout_height="fill_parent"
            android:id="@+id/navfavbtn" android:textColor="#FFF"
            android:background="@drawable/icon" android:src="@drawable/heart"
            android:layout_weight=".25" android:layout_width="0dip" />
        <ImageButton android:layout_height="fill_parent"
            android:id="@+id/navloanbtn" android:textColor="#FFF"
            android:background="@drawable/icon" android:src="@drawable/heart"
            android:layout_weight=".25" android:layout_width="0dip" />

    </LinearLayout>

image buttons fill the space as expected

关于Android:为什么我的按钮不填充父级?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6928591/

相关文章:

android - 异步任务、进度条和 I/O

javascript - PhoneGap 相关协议(protocol)问题

c# - 使用 C# 在 WPF 中更改背景图像

android - ImageButton 返回空白

android - ImageButton.setVisibility() 问题

android - 在 TableLayout 中对齐 ImageButton

android - 如何查找 XML 文件中的错误?

android - 多少cpu占用太多

java - Android - CardView 背景始终为灰色

jQuery 交叉淡入淡出与背景图像