2013-03-02 2 views
0

Я разработал один макет, который имеет всего 4 RelativeLayout - это внешняя обложка, а 3 - это ребенок. Когда я помещаю белый цвет во внешнюю компоновку, не оставляя пробелов, но когда я помещаю 9patch-изображение в качестве изображения с возможностью рисования, чем остальное заполнение/маржа по умолчанию. Есть ли какие-либо проблемы, которые решают проблему заполнения/поля? Я попробовал запас отрицательный, но он будет скрывать разрядное расположение Я думаю, что это не правильное решение, вот мой макетAndroid RelativeLayout Проблемы с дизайном

enter image description here

, когда я положил белый цвет в качестве фона, чем мой макет выглядеть

Здесь есть следующий код моего макета

enter image description here

<RelativeLayout 
     android:id="@+id/DetailSection1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/HeaderLayout" 
     android:layout_toLeftOf="@+id/DetailSection2" 

     > 

     <TextView 
      android:id="@+id/lblRestaurantName" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/DetailSection1" 
      android:layout_marginLeft="5dp" 
      android:layout_marginTop="5dp" 
      android:textColor="@color/heding_font" 
      android:textSize="@dimen/headingFont" 
      android:text="Restaurant Name" /> 

     <ImageView 
      android:id="@+id/imgpin" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_below="@+id/lblRestaurantName" 
      android:layout_margin="5dp" 
      android:src="@drawable/pin" /> 

     <TextView 
      android:id="@+id/lblAddress" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/lblRestaurantName" 
      android:layout_marginTop="5dp" 
      android:layout_toRightOf="@+id/imgpin" 
      android:text="Address" 
      android:textColor="@color/restaurant_list_font" 
      android:textSize="@dimen/lableNormalFont" 
      /> 

     <ImageView 
      android:id="@+id/imgphone" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_below="@+id/lblAddress" 
      android:layout_margin="5dp" 
      android:src="@drawable/phn" /> 

     <TextView 
      android:id="@+id/lblMobile" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/lblAddress" 
      android:layout_marginTop="5dp" 
      android:layout_toRightOf="@+id/imgphone" 
      android:text="Mobile" 
      android:textColor="@color/restaurant_list_font" 
      android:textSize="@dimen/lableNormalFont" 
      /> 

     <ImageView 
      android:id="@+id/imgstar" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_below="@+id/lblMobile" 
      android:layout_margin="5dp" 
      android:src="@drawable/star" /> 

     <TextView 
      android:id="@+id/lblStar" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/lblMobile" 
      android:layout_marginTop="5dp" 
      android:layout_toRightOf="@+id/imgstar" 
      android:text="Star" 
      android:textColor="@color/restaurant_list_font" 
      android:textSize="@dimen/lableNormalFont" 
      /> 
    </RelativeLayout> 

    <RelativeLayout 
     android:id="@+id/DetailSection2" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:layout_alignBottom="@+id/DetailSection1" 
     android:layout_toLeftOf="@+id/DetailSection3" 
     android:layout_toRightOf="@+id/lblStar" > 

     <ImageView 
      android:id="@+id/imgmore" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentBottom="true" 
      android:layout_marginLeft="5dp" 
      android:layout_marginRight="5dp" 
      android:src="@drawable/read_more" /> 
    </RelativeLayout> 

    <RelativeLayout 
     android:id="@+id/DetailSection3" 
     android:layout_width="95dp" 
     android:layout_height="wrap_content" 
     android:layout_alignParentRight="true" 
     android:layout_below="@+id/HeaderLayout" 
     android:layout_gravity="center" 
     android:layout_centerInParent="true" 
     android:background="@drawable/photo_cover" > 

     <ImageView 
      android:id="@+id/imgRestaurant" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:layout_below="@+id/lblMobile" 
      android:layout_margin="5dp" 
      android:src="@drawable/rihanna" /> 
    </RelativeLayout> 
</RelativeLayout> 
+0

не могли бы вы разместить 9-патч, который вы используете, –

+0

Вы попробовали дать корень RelativeLayout width = fillparent и тот же для высоты. – Prateek

+0

Спасибо! Archie.bpgc Я отредактировал мой вопрос с 9 патчами image –

ответ

2

С 9-патчем вытяжкой изображений, публикуемыми:

нижней строкой, которая указует на горизонтальную популяцию данных на представлении не был нарисован от начальной точки слева.

Я не уверен в этом. И я знаю, что я не ясно объяснял вышеприведенную линию.

Просто проверьте это:

Рассмотрим ниже 9-патч используется в качестве фона для TextView. Если вы поместите в него какой-то текст, он начнется с области, в которой отображается нижняя строка. Это означает, что он начнется с левой стороны и пройдет весь путь вправо.

enter image description here

Если вы используете следующий 9-патч в качестве фона и попробовать то же самое, которое вы делали выше. В результате текст не будет записан слева. Он оставляет немного отступов.

enter image description here

Вот причина, почему вы получите такой результат. Конечно, я на 100% уверен в этом.

Итак, чтобы узнать, работает ли это. Попробуйте изменить нижнюю строку, чтобы заполнить полное изображение.

+0

Спасибо! Archie.bpgc. Извините за поздний ответ! ваше описание правильное. Я только что изменил свой 9 патч-образ, и моя проблема решена! –

0

Я думаю, что вам лучше применить цвет фона, для которого вы хотите точно настроить. И еще один сохранить код, чтобы мы могли легко понять, в чем проблема.

+0

спасибо Дэнни! для ответа. Я хочу 9 патч-изображений только потому, что у него есть один эффект тени. –

+0

Danny, я отредактировал мой вопрос и поставил свой код макета –

Смежные вопросы