Android ImageButton从屏幕切断

时间:2013-08-07 15:55:40

标签: android android-image

如何在屏幕底部放置一个图像按钮,使其中的一部分(例如半边或20dp)不在屏幕上。

如果它是一个圆圈,我们会在屏幕底部看到半圈。

编辑: 添加了布局

<RelativeLayout <!-- upper level layout-->
     ...>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true">

        <ImageButton
            android:id="@+id/myButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:background="@null"
            android:scaleType="fitCenter"
            android:src="@drawable/my_image_button" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center"
            android:text="SOME TEXT\nON DRAWABLE"
            android:textColor="@color/bg_start"
            android:textSize="20dp" />
    </FrameLayout>

</RelativeLayout>

1 个答案:

答案 0 :(得分:1)

假设您内部有RelativeLayoutImageButton

<RelativeLayout android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_gravity="bottom">
    <ImageButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

</RelativeLayout>

layout_alignParentBottom属性添加到RelativeLayout

android:layout_alignParentBottom="true"

layout_marginTopImageButton

android:layout_marginTop="some dp"

在发布的布局后编辑

添加android:layout_marginBottom="-20dp" - 不是最佳解决方案,而是解决方案。尝试使用设备(如果它确实有效)。设计师展示了图像的一半和文本移出布局边框

<RelativeLayout <!-- upper level layout-->
     ...>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="-20dp"
        android:layout_centerHorizontal="true">

        <ImageButton
            android:id="@+id/myButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:background="@null"
            android:scaleType="fitCenter"
            android:src="@drawable/my_image_button" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center"
            android:text="SOME TEXT\nON DRAWABLE"
            android:textColor="@color/bg_start"
            android:textSize="20dp" />
    </FrameLayout>

</RelativeLayout>

或者将layout_marginTop="some dp"添加到ImageView和TextView

<RelativeLayout <!-- upper level layout-->
     ...>

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true">

        <ImageButton
            android:id="@+id/myButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:background="@null"
            android:scaleType="fitCenter"
            android:layout_marginTop="20dp"
            android:src="@drawable/my_image_button" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:gravity="center"
            android:layout_marginTop="40dp"
            android:text="SOME TEXT\nON DRAWABLE"
            android:textColor="@color/bg_start"
            android:textSize="20dp" />
    </FrameLayout>

</RelativeLayout>