0

문제 w :여백 문제/안드로이드 레이아웃 (있는 ScrollView 및 선형)

나는 배경이 실제로 하나 개의 이미지 인 것처럼 보이는 있도록 이미지/뷰 사이의 공간을 제거하려고 시도하고있다. 이 문제를 해결하기위한 다양한 접근법이나 방법이 인정 될 것입니다.

예 이미지 : enter image description here

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:orientation="vertical" 
android:background="#edeab5"> 

    <ImageView 
     android:id="@+id/bgnewsfeedtop" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="5dp" 
     android:layout_marginTop="5dp" 
     android:layout_marginBottom="0dp" 
     android:src="@drawable/newsfeedtop" /> 

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="fill_parent" 
    android:layout_height="0dip" 
    android:layout_margin="0dp" 
    android:layout_weight="1" 
    android:orientation="horizontal" > 

<ImageView 
    android:id="@+id/bgnewsfeedleft" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="5dp" 
    android:layout_marginRight="0dp" 
    android:layout_marginTop="0dp" 
    android:layout_marginBottom="0dp" 
    android:src="@drawable/newsfeedleft" /> 

    <ScrollView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/scroller" 
     android:layout_width="wrap_content" 
     android:layout_height="fill_parent" 
     android:fillViewport="true" 
     android:src="@drawable/newsfeedbg" > 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:cacheColorHint="@android:color/transparent" 
      android:orientation="vertical" > 

      <ImageView 
       android:id="@+id/btn1_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 

      <ImageView 
       android:id="@+id/btn2_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 

      <ImageView 
       android:id="@+id/btn3_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 

      <ImageView 
       android:id="@+id/btn4_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 

      <ImageView 
       android:id="@+id/btn5_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 

      <ImageView 
       android:id="@+id/btn6_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 

      <ImageView 
       android:id="@+id/btn7_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:src="@drawable/filler" /> 
     </LinearLayout> 
    </ScrollView> 

    <ImageView 
    android:id="@+id/bgnewsfeedright" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="0dp" 
    android:layout_marginRight="5dp" 
    android:layout_marginTop="0dp" 
    android:layout_marginBottom="0dp" 
    android:src="@drawable/newsfeedright" /> 
</LinearLayout> 

<ImageView 
    android:id="@+id/bgnewsfeedbot" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:layout_marginLeft="5dp" 
    android:layout_marginRight="5dp" 
    android:layout_marginTop="0dp" 
    android:src="@drawable/newsfeedbot" /> 

<LinearLayout 
    android:id="@+id/linearLayout1" 
    android:layout_width="fill_parent" 
    android:layout_height="75dp" 
    android:orientation="horizontal" > 

    <ImageView 
     android:id="@+id/menu_house_manager" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager2" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager3" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager4" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

</LinearLayout> 

<LinearLayout 
    android:id="@+id/linearLayout2" 
    android:layout_width="fill_parent" 
    android:layout_height="100dp" 
    android:layout_alignParentLeft="true" 
    android:orientation="horizontal" > 

    <ImageView 
     android:id="@+id/menu_house_manager" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager2" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager3" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager4" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

</LinearLayout> 
</LinearLayout> 

편집 **** 도움이 후

가 제공된 코드 및 이미지 수정되었다 :

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#edeab5" > 


    <View 
     android:id="@+id/newstop" 
     android:layout_width="fill_parent" 
     android:layout_alignParentTop="true" 
     android:layout_height="15dp" 
     android:layout_marginTop="10dp" 
     android:layout_marginLeft="10dp" 
     android:layout_marginRight="10dp" 
     android:background="@drawable/newsfeedtop" 
     /> 

    <View 
     android:id="@+id/newsleft" 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent" 
     android:layout_marginLeft="10dp" 
     android:background="@drawable/newsfeedleft" 

     android:layout_toLeftOf="@+id/scroller" 
     android:layout_below="@+id/newstop" 
     android:layout_above="@+id/newsbottom" 
     /> 

    <View 
     android:id="@+id/newsleft" 
     android:layout_height="fill_parent" 
     android:layout_width="fill_parent" 
     android:layout_marginRight="10dp" 
     android:background="@drawable/newsfeedright" 

     android:layout_toRightOf="@+id/scroller" 
     android:layout_below="@+id/newstop" 
     android:layout_above="@+id/newsbottom" 
     /> 


    <ScrollView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/scroller" 
     android:layout_width="wrap_content" 
     android:layout_height="150dp" 
     android:layout_centerInParent="true" 
     android:fillViewport="true" 
     android:background="#000000" 
     android:layout_below="@+id/newstop"> 

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="#cc0000" > 



      <ImageView 
       android:id="@+id/btn1_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 

      <ImageView 
       android:id="@+id/btn2_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn1_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name"/> 

      <ImageView 
       android:id="@+id/btn3_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn2_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 

      <ImageView 
       android:id="@+id/btn4_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn3_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 

      <ImageView 
       android:id="@+id/btn5_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn4_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 


      </RelativeLayout> 
      </ScrollView> 

    <View 
     android:id="@+id/newsbottom" 
     android:layout_width="fill_parent" 
     android:layout_height="15dp" 
     android:layout_marginLeft="10dp" 
     android:layout_marginRight="10dp" 
     android:background="@drawable/newsfeedbot" 
     android:layout_below="@+id/scroller" 
     /> 

    <LinearLayout 
    android:id="@+id/buttonsrow1" 
    android:layout_width="fill_parent" 
    android:layout_height="75dp" 
    android:orientation="horizontal" 
    android:layout_marginTop="12dp" 
    android:layout_below="@+id/newsbottom"> 

    <ImageView 
     android:id="@+id/menu_house_manager" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager2" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager3" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager4" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

</LinearLayout> 

    <LinearLayout 
     android:id="@+id/buttonsrow2" 
     android:layout_width="fill_parent" 
     android:layout_height="75dp" 
     android:layout_below="@+id/buttonsrow1" 
     android:orientation="horizontal" > 

    <ImageView 
     android:id="@+id/menu_house_manager" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager2" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager3" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

    <ImageView 
     android:id="@+id/menu_house_manager4" 
     android:layout_width="55dp" 
     android:layout_height="55dp" 
     android:layout_margin="12dp" 
     android:src="@drawable/btnhousemanager" /> 

</LinearLayout> 

    </RelativeLayout> 

enter image description here

답변

0

이미 되세요을 relati와 함께 뭔가를했다. ve 레이아웃?

이렇게하면 문제를 해결할 수 있습니다. 당신은 모든이

android:id = "@+id/whateveryouwanttonameit" 

하여 ID를 확인하고 다음이 ID에 참고로하는 것에 의해 다른 뷰를 정렬 할 수 있습니다 제공합니다. 예를 들어

: 왼쪽 가장자리 예에서

<ImageButton 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentBottom="true" 
    android:id="@+id/newGameButton" 
    android:text="@string/newGameButton" 
    android:background="@drawable/newgame" 
    android:contentDescription="@string/feld"/> 

<ImageView 
    android:layout_alignLeft="@id/newGameButton" 
    android:layout_width="50dp" 
    android:layout_height="50dp" 
    android:layout_above="@id/newGameButton" 
    android:src="@drawable/x" 
    android:id="@+id/sp2" 
    android:contentDescription="@string/feld"/> 

ImageViews을 사용하여하여 ImageButton의 왼쪽 가장자리와 정렬 얻는다 :

android:layout_alignLeft="@id/newGameButton" 

그것은 임의 공간없이 newGameButton 위에 정확하게 또한 ~ 사이에 추가

android:align_above="@id/newGameButton" 

이렇게하면 전체 활동을 티.

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#FFFFFF" > 


    <View 
     android:layout_width="fill_parent" 
     android:layout_height="15dp" 
     android:background="#FF0000" 
     android:layout_above="@id/scroller" 
     /> 


    <ScrollView 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:id="@+id/scroller" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_centerInParent="true" 
     android:fillViewport="true" 
     android:background="#000000"> 

     <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:background="#00FF00" > 



      <ImageView 
       android:id="@+id/btn1_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 

      <ImageView 
       android:id="@+id/btn2_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn1_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name"/> 

      <ImageView 
       android:id="@+id/btn3_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn2_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 

      <ImageView 
       android:id="@+id/btn4_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn3_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 

      <ImageView 
       android:id="@+id/btn5_news_feed" 
       android:layout_width="280dp" 
       android:layout_height="50dp" 
       android:layout_gravity="center_horizontal" 
       android:layout_margin="2dp" 
       android:layout_below="@id/btn4_news_feed" 
       android:background="#000000" 
       android:contentDescription="@string/app_name" /> 


      </RelativeLayout> 
      </ScrollView> 


    </RelativeLayout> 

나에게이 레이아웃을 제공합니다 : 그래서 여기

은 예입니다

layout

나는 여백 속성을 유지하고 녹색에있는 ScrollView의 배경을했다.

아래 속성을 사용하여 레이아웃을 만들었습니다.

정의하지 않으면 요소 사이에 공백이 없음을 보여주기 위해 여백 특성없이 빨간색 뷰 요소를 추가했습니다.

전체 레이아웃을 수행했지만 RelativeLayout을 사용하여 레이아웃을 수행하는 방법을 보여주기 위해 일부만 복사했습니다. 나는 당신을 위해 이것이 효과가 있기를 바랍니다.)

+0

Hmm ..이 방법은 ScrollView가 포함 된 상자를 조합하는 것처럼 보이지만, RelativeLayout 내에 ScrollView를 배치하는 것이 문제가 될 수 있습니까? 나는 이것으로 주위를 어지럽히고, 내가 일할 수 있다면 나는 당신의 대답을 "받아 들일 것"입니다. 도와 주셔서 감사합니다! –

+0

아니야 작동하지. 내 대답에 예제를 추가합니다. –

+0

나는 당신의 질문을 다시 읽었으며 나는 단지 복잡하다고 생각했다. 빨간색 프레임보기에서 여백을 삭제하면됩니다. –

1

당신은 그 검은 선들에 대해 이야기하고 있습니까? 나는 너의 질문을 잘 이해하지 못했다고 생각한다.이 잘 설정

android:layout_margin="2dp" 

: 당신은 (: 대신있는 ScrollView를 사용하고있는 LinearLayout 당신이 목록보기 및 N의 뉴스 피드를 추가 할 수있는 사용자 정의 어댑터를 사용해야 내 말은) 당신의 "수동 목록보기"에서 일을

, 왼쪽, 위쪽, 아래쪽 여백. 다음과 같이하십시오 :

android:layout_marginRight="2dp" 
android:layout_marginLeft="2dp" 
+0

검은 색 선은 ScrollView의 일부입니다. 검은 선이 들어있는 빨간색 상자 사이의 여백에 대해 이야기하고있었습니다. 톱 바와 사이드 바 사이에는 스페이스 바가 있으며 사이드 바와 바 아래 사이에는 간격이 있습니다. –