LinearLayout 设置不规范 .9 背景图片造成内部TextView不显示的问题

今天项目中遇到一个很奇葩的问题,布局文件中相关代码如下:

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="@dimen/px98"
            android:background="@drawable/box_head"
            android:gravity="center_vertical"
            android:orientation="horizontal" >

            <TextView
                android:id="@+id/tv_cancel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginLeft="@dimen/px80"
                android:text="@string/activity_send_notification_cancel"
                android:textColor="@color/activity_edit_notification_btn_back_text_selector"
                android:textSize="@dimen/px40" />

            <View
                android:layout_width="0dp"
                android:layout_height="1dp"
                android:layout_weight="1.0" />

            <TextView
                android:id="@+id/tv_send"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_marginRight="@dimen/px80"
                android:text="@string/activity_send_notification_send"
                android:textColor="@color/activity_edit_notification_btn_send_text_selector"
                android:textSize="@dimen/px40" />
        </LinearLayout>

代码中 @drawable/box_head 实际是一个.9图片,这个.9图片由于不规范,导致LinearLayout内部的 TextView 不能正常显示,这个问题困扰了我好几个小时,一开始没有意识到是LinearLayout背景图片问题,后来当我去掉背景图片时,恢复正常。

那么现在问题来了,项目中又需要这个.9背景图片,改怎么办呢?
答案是:规范化.9图片,不仅仅需要设置拉伸范围,还得设置内容范围,这样规范以后,就能正常显示出来了。

标签:none