android - 如何调整滚动视图的大小以使所有内容都适合屏幕?
问题描述
我不太确定我在这里做错了什么。
我希望广告位于底部以便显示在屏幕上,并且我希望缩小scrollview
或缩小顶层linearlayout
以便所有内容都可以显示在屏幕上。
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".DisplayMagic">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:layout_alignParentBottom="true"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/notice"
android:text="@string/notice"
android:textColor="@color/colorPrimary"
android:textSize="18sp"/>
<ScrollView
android:id="@+id/magic_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginEnd="8dp"
android:layout_marginRight="8dp"
android:layout_marginLeft="8dp"
android:layout_marginStart="8dp"
app:layout_constraintTop_toBottomOf="@id/notice"
app:layout_constraintBottom_toTopOf="@id/adView">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent">
<TextView
android:id="@+id/text_uri_message"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold"
android:text="@string/test_value"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toTopOf="@id/tags_box"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tags_box"
app:layout_constraintTop_toBottomOf="@id/text_uri_message"
app:layout_constraintBottom_toBottomOf="parent"/>
</LinearLayout>
</ScrollView>
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
ads:adSize="SMART_BANNER"
ads:adUnitId="ca-app-pub-3940256099942544/6300978111"
app:layout_constraintBottom_toBottomOf="parent">
</com.google.android.gms.ads.AdView>
</LinearLayout>
</android.support.constraint.ConstraintLayout>
在我添加之前这是有效AdView
的,但我不太确定我在哪里搞砸了。
在这种情况下,@string/test_value
只是长的虚拟文本来强制scrollview
变大:
Ads are an effective and easy way to earn revenue from your apps. Google AdMob is
a smart monetization platform for apps that helps you to maximize revenue from ads and in-app purchases. More
than 1 million apps use Google AdMob to generate a reliable revenue stream, with more than $1 billion paid to
developers. All you need to do is sign up for Google AdMob, and then use the Google Mobile Ads SDK to place ads
in your app with just a few lines of code. You get paid quickly in your local currency (where available), with
no wire fees charged by Google AdMob. Also, Google AdMob’s integration with Google Play services pushes
automatic performance improvements to Android apps without additional SDK changes.Well-placed, well-targeted ads
in apps, particularly free apps, can achieve good click-through rates while preserving the app’s user
experience. It’s easy to add the code to deliver ads, and Google AdMob takes care of the rest: finding and
delivering relevant ads to your app from any of Google’s advertiser demand across Google AdMob, Google Ads, and
the Authorized buyers. This range of advertising sources—coupled with free, industry-leading mediation—achieves
high CPMs and excellent fill rates, automatically helping to improve your earnings.
不wrap_content
应该调整大小scrollview
还是我在某处的布局中犯了错误?
解决方案
您可以尝试此 xml 代码:我正在使用带有属性匹配约束的约束布局,ScrollView
它AdView
允许ScrollView
根据其链接约束对其进行自我设置。
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/notice"
android:text="@string/notice"
android:textColor="@color/colorPrimary"
android:textSize="18sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<ScrollView
android:id="@+id/magic_container"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/adView"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/notice"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintVertical_bias="0.0"
app:layout_constraintHorizontal_bias="0.0">
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:id="@+id/text_uri_message"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textSize="18sp"
android:textStyle="bold"
android:text="@string/gen_text"
android:layout_marginEnd="8dp"
app:layout_constraintEnd_toEndOf="parent"
android:layout_marginStart="8dp"
app:layout_constraintStart_toStartOf="@+id/tags_box"
app:layout_constraintTop_toTopOf="parent"/>
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/tags_box"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:layout_marginTop="8dp"
app:layout_constraintTop_toBottomOf="@+id/text_uri_message"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginBottom="8dp"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintVertical_bias="1.0"/>
</android.support.constraint.ConstraintLayout>
</ScrollView>
<com.google.android.gms.ads.AdView
xmlns:ads="http://schemas.android.com/apk/res-auto"
android:id="@+id/adView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
ads:adSize="SMART_BANNER"
ads:adUnitId="ca-app-pub-3940256099942544/6300978111"
app:layout_constraintBottom_toBottomOf="parent"
ads:layout_constraintStart_toStartOf="parent"
ads:layout_constraintEnd_toEndOf="parent">
</com.google.android.gms.ads.AdView>
</android.support.constraint.ConstraintLayout>
推荐阅读
- android - 如何在 ConstraintLayout 中设置布局权重
- android - 如何在真实设备上运行 Android 应用程序?
- scala - 我如何将 prometheus 集成到 Scala sbt 项目中?
- arrays - 将嵌套数组从 vuejs 保存到 Laravel 后端不起作用
- facebook - 尝试获取页面评分时 Facebook Graph API 出现问题。我没有得到任何用户特定的数据
- ios - Ios 在展开可选值错误时意外发现 nil
- aws-lambda - Slack - 未调用交互式消息 URL
- angular - 具有大型数据集的角度选择
- android - canvas.translate 后波纹效果无法覆盖整个文本视图
- java - 为什么我的 ProgressBar 变量被视为 null?顺便说一句,这是一个片段