2016-11-15 5 views
0

내가 가지고있는 나의 레이아웃 중 하나의 레이아웃의 부분을 다음 :이 이름의에서 당신이 이해할 수있는 것처럼안드로이드 :

..... 
    <LinearLayout 
    android:id="@+id/llBottom" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:gravity="center_vertical" 
    android:layout_alignParentBottom="true" 
    android:orientation="vertical"> 

    <RelativeLayout 
     android:id="@+id/llGameInformation" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginBottom="5dp" 
     android:layout_marginLeft="20dp" 
     android:layout_marginRight="20dp" 
     android:gravity="center_vertical"> 

     <ImageButton 
      android:id="@+id/imgBtnVolume" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentStart="true" 
      android:background="@drawable/icon_button_selector" 
      android:src="@drawable/icon_button_sound" /> 
     <!--app:srcCompat="@drawable/icon_button_sound"--> 

     <me.grantland.widget.AutofitTextView 
      android:id="@+id/tvGameCardText" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textColor="@color/cl_game_screen_card_name_text_color" 
      android:textSize="30dp" 
      tools:text="card name" 
      android:gravity="center" 
      autofit:minTextSize="22dp" 
      android:layout_centerInParent="true" 
      android:textAppearance="@style/TextAppearance.GothamBook" 
      android:layout_toLeftOf="@+id/imgBtnShowCards" 
      android:layout_toRightOf="@+id/imgBtnVolume"/> 

     <ImageButton 
      android:id="@+id/imgBtnShowCards" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentEnd="true" 
      android:layout_alignParentRight="true" 
      android:background="@drawable/icon_button_selector" 
      app:srcCompat="@drawable/icon_button_view"/> 
    </RelativeLayout> 

    <com.google.android.gms.ads.AdView 
     android:id="@+id/adView" 
     android:visibility="gone" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     ads:adSize="FLUID" 
     ads:adUnitId="@string/banner_ad_unit_id"> 
    </com.google.android.gms.ads.AdView> 
</LinearLayout> 
.... 

llBottom 가시성 = "사라"특정 장치에 공간을 취소하지 않습니다 화면 하단에있는 LinearLayout이며 그 위치는 다음과 같습니다. 그것에서 나는 여러보기를 포함하는 RelativeLayout을 가지고 있으며 그 아래에 AdView을 두었습니다.

visibility = "gone"으로 AdView를 시작하고 서버 환경 설정에 따라 표시하려고합니다. 넥서스 배에 의도 이것은 AdView가 제거되어 동작하며 llGameInformation 다른 측면에서 AdView 갤럭시 장치에 배치에서 가장 낮은 뷰 그룹이지만 가시되지 않고 여전히 취

문제는 공백이 있으므로 llGameInformation에 빈 공간이 있습니다.

누가 이것을 처리 할 수있는 올바른 방법이 있는지 알고 있습니까? 그래서 모든 장치에 빈 공간이 남아 있지 않습니까?

미리 감사드립니다.

+0

Visibility를 사용하지 않고 프로그래밍 방식으로 RelativeLayout에 뷰를 추가하고 제거하려고 했습니까? – BIW

+0

에뮬레이터 또는 실제 장치를 사용하고 있습니까? – Pooya

+0

@BIW, 아니 ... 처음에는이 문제를 해결하기 위해 내 모든 레이아웃 가능성을 탐험하고 싶었습니다 ... 일부 장치에서 더 많은 기능을 수행하고 있습니다. –

답변

1

AdView를 FrameLayout으로 감싸고 유효성을 gone으로 설정해야합니다.보기의 가시성이 자체적으로 변경 될 수 있습니다.

더 깊은 다이빙이나 이전에 작동하지 않는 경우, FrameLayout 의상을 작성하고 누군가가 실제로 당신의 시야를 변경하려고하는지 볼 수 있습니다. 그런 경우에는 당신이 그것을 디버그하고 차단할 수 있습니다 , 그것의 전망으로.

마음에 들지 않으면 누군가가 FrameLayout 생존 능력을 변경할 수있는 방법이 없습니다.