元素被推到右边。为什么?
Element gets pushed to the right. Why?
当我的LinearLayout
被这样编码时:
<LinearLayout ...
<!-- SOME CODE HERE -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="17">
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/inputText"
android:inputType="textCapCharacters|textMultiLine"
android:hint="@string/input_text_hint"
android:gravity="top|left"/>
</LinearLayout>
<!-- MORE CODE HERE -->
</LinearLayout>
我的 activity 看起来像这样:
但是当我添加此 adMob 代码时:
<LinearLayout ...
<!-- SOME CODE HERE -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="17">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="@string/top_banner_1">
</com.google.android.gms.ads.AdView>
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/inputText"
android:inputType="textCapCharacters|textMultiLine"
android:hint="@string/input_text_hint"
android:gravity="top|left"/>
</LinearLayout>
<!-- MORE CODE HERE -->
</LinearLayout>
我明白了:
如何让广告显示在 EditText
之上?
LinearLayour 的默认方向是水平的,这使得添加将您的 EditText 推向右侧。如果将 android:orientation="vertical"
添加到父 LinearLayout,问题就解决了。
我认为您必须使用的正确代码是:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="17">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="@string/top_banner_1">
</com.google.android.gms.ads.AdView>
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/inputText"
android:inputType="textCapCharacters|textMultiLine"
android:hint="@string/input_text_hint"/>
</LinearLayout>
我已经删除了一些可能会使您提供的图像中的布局看起来难看的属性。
当我的LinearLayout
被这样编码时:
<LinearLayout ...
<!-- SOME CODE HERE -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="17">
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/inputText"
android:inputType="textCapCharacters|textMultiLine"
android:hint="@string/input_text_hint"
android:gravity="top|left"/>
</LinearLayout>
<!-- MORE CODE HERE -->
</LinearLayout>
我的 activity 看起来像这样:
但是当我添加此 adMob 代码时:
<LinearLayout ...
<!-- SOME CODE HERE -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="17">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="@string/top_banner_1">
</com.google.android.gms.ads.AdView>
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/inputText"
android:inputType="textCapCharacters|textMultiLine"
android:hint="@string/input_text_hint"
android:gravity="top|left"/>
</LinearLayout>
<!-- MORE CODE HERE -->
</LinearLayout>
我明白了:
如何让广告显示在 EditText
之上?
LinearLayour 的默认方向是水平的,这使得添加将您的 EditText 推向右侧。如果将 android:orientation="vertical"
添加到父 LinearLayout,问题就解决了。
我认为您必须使用的正确代码是:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_weight="17">
<com.google.android.gms.ads.AdView
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
ads:adSize="BANNER"
ads:adUnitId="@string/top_banner_1">
</com.google.android.gms.ads.AdView>
<EditText
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/inputText"
android:inputType="textCapCharacters|textMultiLine"
android:hint="@string/input_text_hint"/>
</LinearLayout>
我已经删除了一些可能会使您提供的图像中的布局看起来难看的属性。