在LinearLayout中重叠文本视图

时间:2016-07-26 08:37:57

标签: android android-layout android-linearlayout

我的问题是我想在LinearLayout中重叠两个TextView。在智能手机上看起来没问题,但在平板电脑上,负边缘让我很难过。

这是我想要获取的布局enter image description here

这是代码。如何修改它以便我可以在另一个文本视图的右上部分重叠一个文本视图而不使用负边距?

<FrameLayout
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:background="@drawable/bottom_bar_back_with_arrow"

            android:layout_weight="1">
            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="match_parent"
                android:layout_gravity="center">

                <TextView
                    android:id="@+id/mShowHideScale"
                    style="@style/BottomBarButton"
                    android:layout_weight="1"
                    android:drawableTop="@drawable/show_calibrate_tool"
                    android:text="Calibrate" />

                <TextView
                    android:id="@+id/badgeRadius"
                    android:layout_width="14dip"
                    android:layout_height="14dip"
                    android:textColor="@color/primary_color"
                    android:textStyle="bold"
                    android:gravity="center"
                    android:background="@drawable/shape_notification"
                    android:layout_marginLeft="-18dp"
                    android:layout_marginTop="-27dp"/>
            </LinearLayout>
          </FrameLayout>

2 个答案:

答案 0 :(得分:1)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:clickable="true"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/White">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <com.UTU.View.UtuTextView
            android:visibility="visible"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginTop="10dp"
            android:layout_marginBottom="10dp"
            android:gravity="center"
            android:textStyle="bold"
            android:textSize="17sp"
            android:text="" />

        <com.UTU.View.UtuButton
            android:id="@+id/btn_crop"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@color/transparent_full"
            android:textColor="@color/black"
            android:clickable="true"
            android:layout_marginTop="30dp"
            android:text="Select Image" />

        <FrameLayout
            android:background="@drawable/utu_round_background"
            android:layout_marginRight="10dp"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:layout_gravity="right">

            <ImageView
                android:background="@color/red"
                android:src="@drawable/icon_user_default"
                android:id="@+id/iv_fragment_dashboard_user_image"
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:layout_gravity="right" />

            <ImageView
                android:layout_width="50dp"
                android:layout_height="50dp"
                android:src="@drawable/icon_profile_border" />
        </FrameLayout>

    </FrameLayout>

</LinearLayout>

试试这个。我使用我的代码修改一些布局来测试,对于圆形绘图,你可以尝试修改图像或按钮的背景。

答案 1 :(得分:0)

这是我在代码中的方式

<RelativeLayout
    android:layout_width="@dimen/menuitem_width"
    android:layout_height="@dimen/toolbar_height">

    <ImageView
        android:id="@+id/menu_layout_notification_icon"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:src="@drawable/mi_menu_notification"/>

        <RelativeLayout
            android:id="@+id/menu_layout_notifcation_newIndicatorWrapper"
            android:layout_width="10dp"
            android:layout_height="10dp"
            android:layout_marginTop="-5dp"
            android:layout_marginEnd="-5dp"
            android:background="@drawable/background_red_notif"
            android:layout_alignTop="@+id/menu_layout_notification_icon"
            android:layout_alignEnd="@+id/menu_layout_notification_icon"
            android:visibility="gone">

...
        </RelativeLayout>
</RelativeLayout>

通过将其与ImageView的顶部和末尾对齐,RelativeLayout的顶部和末尾的末端与ImageView的顶部和末尾对齐。然后我添加负边距并在ImageView

中留下5 dp