【问题标题】:Text doesn't start at the top in android project layout文本不在android项目布局的顶部开始
【发布时间】:2016-08-29 14:47:55
【问题描述】:

我的布局中有一个 Textview,我在页面底部添加了 4 个按钮。对此添加了一个滚动视图,因为它太多无法容纳在一页中。现在,在我添加按钮之后,文本在同一个位置,但从第 2 行开始。第一行在屏幕顶部,不可见。这意味着范围不够大或什么的。

但是我有一个滚动视图,所以我认为应该可以从第一行开始并向下滚动。有谁知道我该如何解决?下图显示了它的外观。在灰色的顶部,在徽标上方,您可以看到一些其他文本,应该在白色部分,与其他文本一样。 帮助将不胜感激。

这是我的布局代码:

<LinearLayout 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:orientation="vertical"
    tools:context="com.example.rodekruis.BWC" >



    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginBottom="20dp"
        android:src="@drawable/rkz_logo" 
        android:layout_gravity="left" 
        android:layout_marginLeft="38dp"/>

    <ScrollView
        android:id="@+id/scrollview"
        android:layout_width="fill_parent"
        android:layout_height="352dp" >

    <TextView
        android:id="@+id/textView"
        android:layout_width="244dp"
        android:layout_height="405dp"
        android:layout_gravity="center"
        android:text="@string/title_activity_bwc"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:textColor="@color/black" />




</ScrollView>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_marginTop="15dp"
        android:layout_marginBottom="40dp"
        android:orientation="horizontal">

        <Button
            android:id="@+id/button11"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginRight="5dp"
            android:layout_weight="1"
            android:text="Facebook" />

        <Button
            android:id="@+id/button12"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginLeft="5dp"
            android:layout_marginRight="5dp"
            android:layout_weight="1"
            android:text="Youtube" />

        <Button
            android:id="@+id/button13"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_alignLeft="@+id/button5"
            android:layout_below="@+id/button8"
            android:layout_marginLeft="5dp"
            android:layout_weight="1"
            android:text="Twitter" />

        <Button
            android:id="@+id/button14"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_alignLeft="@+id/button5"
            android:layout_below="@+id/button8"
            android:layout_marginLeft="5dp"
            android:layout_weight="1"
            android:text="LinkedIn" />

    </LinearLayout>
</LinearLayout>

这是我的 XML 代码:

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

    <string name="app_name">Rodekruis</string>
    <string name="hello_world">Hello world!</string>
    <string name="action_settings">Settings</string>
    <string name="title_activity_nieuws">NieuwsActivity</string>
    <string name="title_activity_afspraak">AfspraakActivity</string>
    <string name="title_activity_bezoek">    Bezoektijden\n\nVrijwel iedere patiënt vindt het prettig bezoek te ontvangen. Onze ervaring is
    dat een goed contact met vrienden en familie een bijdrage kan leveren aan 
    een spoedig herstel.\n\nVoor de meeste afdelingen gelden de volgende bezoektijden:\nvan 15.15 tot 16.15 uur;\nvan 19.00 tot 20.00 uur.\n\nLet op: tijdens feestdagen gelden in het RKZ andere bezoektijden dan normaal.
    Bekijk de website voor uitgebreide bezoektijden.
</string>
    <string name="title_activity_contact">&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Contact&lt;br /&gt;&lt;br /&gt;Telefoon en internet Rode Kruis Ziekenhuis&lt;br /&gt;T 0251 26 5555 (algemeen nummer, ook Poli IJmuiden)&lt;br /&gt;www.rkz.nl<a href='https://www.rkz.nl'> </a>&lt;br /&gt;&lt;br /&gt;Huisartsenpost Midden-Kennemerland (begane grond RKZ)&lt;br /&gt;Voor huisartsenzorg buiten kantooruren&lt;br /&gt;T 0251 26 5265&lt;br /&gt;
    (A.u.b. bellen voordat u langskomt)&lt;br /&gt; Spoedeisende Hulp RKZ en Huisartsenpost: meer informatie&lt;br /&gt;Bij levensbedreigende klachten belt u altijd 112&lt;br /&gt;&lt;br /&gt;Bezoek- en postadres Rode Kruis Ziekenhuis&lt;br /&gt;Vondellaan 13&lt;br /&gt;1942 LE Beverwijk&lt;br /&gt;Route(link)&lt;br /&gt;Postbus 1074&lt;br /&gt;1940 EB Beverwijk
</string>
    <string name="title_activity_mening">MeningActivity</string>
    <string name="title_activity_route">
        \n\nRoute\n\nRode Kruis Ziekenhuis, hoofdgebouw\nVondellaan 13\n1942 LE Beverwijk\n\nDe Velsertunnel is van medio mei tot eind 2016 gesloten.\nVoor verkeer vanuit zuidelijke richting is het Rode Kruis Ziekenhuis in Beverwijk hierdoor moeilijker bereikbaar. Bekijk: \n\n\u2022    actuele verkeersinformatie korte routes naar/van het RKZ\n\u2022    actuele verkeersinformatie langere routers naar/van het RKZ\n\u2022    plan uw route naar/van het RKZ met      actuele verkeersinformatie\n\nRKZ Poli IJmuiden (tijdelijk i.v.m. sluiting Velsertunnel)\nGezondheidscentrum Het Plein\nPlein 1945, nr.1\nIJmuiden\n\u2022    Plan uw route(Google maps)\n\u2022    Meer informatie over de Poli IJmuiden</string>
    <string name="title_activity_specialisten">SpecialistenActivity</string>
    <string name="title_activity_bwc">
        &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Het RKZ Brandwondencentrum, beter bekend als: Brandwondencentrum Beverwijk, levert al meer dan veertig jaar topklinische zorg op het gebied van huid-, brandwonden- en littekenbehandelingen en wordt zowel in het binnen- als buitenland hoog gewaardeerd.&lt;br /&gt;&lt;br /&gt;Wie werken er in het Brandwondencentrum? Wat maakt het centrum zo bijzonder? Wat is een brandwond precies, wanneer is behandeling in het Brandwondencentrum Beverwijk nodig? Welke behandelingen vinden er plaats? Hoe vindt een opname plaats en wat zijn de bezoekregels? En welke afdelingen en poliklinieken behoren tot het brandwondencentrum?&lt;br /&gt;&lt;br /&gt;Op de website van Brandwondencentrum worden deze vragen uitegebreid beantwoord.&lt;br /&gt;&lt;br /&gt;Brandwondencentrum Beverwijk heeft speciaal voor kinderen en tieners een <a href='https://www.rkz.nl/het_kinderbrandwondencentrum'> </a>
    </string>
    <string name="title_activity_agenda">AgendaActivity</string>
    <string name="title_activity_info">InfoActivity</string>
    <string name="title_activity_vriend">\n\n\n\nWord vriend van het RKZ\n\n Een verblijf in het ziekenhuis is meestal niet erg plezierig. De Stichting Vrienden van het Rode Kruis Ziekenhuis spant zich in om het verblijf van patiënten, bezoekers en medewerkers van het Rode Kruis Ziekenhuis en het bijbehorende Brandwondencentrum Beverwijk te veraangenamen. Door geld in te zamelen voor voorzieningen die niet uit het basisbudget van het ziekenhuis kunnen worden betaald. Denk aan een opknapbeurt voor de speelkamer voor jonge patiënten of een verwenbehandeling bij een chemokuur.\n\nOok u kunt helpen. Door Vriend te worden van het RKZ of door ons eenmalig te steunen. Lees verder op de website.\n\nMet vrienden om je heen voel je je beter. Geef om het Rode Kruis Ziekenhuis. 
    </string>
    <string name="title_activity_folders">FoldersActivity</string>

</resources>

【问题讨论】:

  • 你能发布你的布局代码吗?
  • 可以放你的xml代码吗?
  • fyi,通常 XML 代码是指布局,而不是 strings.xml :D
  • 哦,是的,我的错。嗯,他们都在 xD 中
  • 尝试在 xml 中的 Scrollview 中添加 android:fillViewport="true"。

标签: android layout textview


【解决方案1】:

输入这个xml代码:

<LinearLayout 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:orientation="vertical"
 >



<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginBottom="20dp"
    android:src="@drawable/ic_launcher" 
    android:layout_gravity="left" 
    android:layout_marginLeft="38dp"/>

<ScrollView
    android:id="@+id/scrollview"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1"
    android:paddingTop="10dp" >

<TextView
    android:id="@+id/textView"
    android:layout_width="244dp"
    android:layout_height="405dp"

    android:layout_gravity="center"
    android:text="@string/title_activity_bwc"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:textColor="#000000" />
 </ScrollView>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_marginTop="15dp"

    android:orientation="horizontal"
    android:layout_alignParentBottom="true"
    >

    <Button
        android:id="@+id/button11"
        style="?android:attr/buttonStyleSmall"

        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_marginRight="5dp"
        android:layout_weight="1"
        android:text="Facebook" />

    <Button
        android:id="@+id/button12"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_weight="1"
        android:text="Youtube" />

    <Button
        android:id="@+id/button13"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_alignLeft="@+id/button5"
        android:layout_below="@+id/button8"
        android:layout_marginLeft="5dp"
        android:layout_weight="1"
        android:text="Twitter" />

    <Button
        android:id="@+id/button14"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_alignLeft="@+id/button5"
        android:layout_below="@+id/button8"
        android:layout_marginLeft="5dp"
        android:layout_weight="1"
        android:text="LinkedIn" />

</LinearLayout>

你的 string.xml:

  change your string.xml 


    <string name="title_activity_bwc">
     Het RKZ Brandwondencentrum, beter bekend als: Brandwondencentrum Beverwijk, levert al meer dan veertig jaar topklinische zorg op het gebied van huid-, brandwonden- en littekenbehandelingen en wordt zowel in het binnen- als buitenland hoog gewaardeerd.&lt;br /&gt;&lt;br /&gt;Wie werken er in het Brandwondencentrum? Wat maakt het centrum zo bijzonder? Wat is een brandwond precies, wanneer is behandeling in het Brandwondencentrum Beverwijk nodig? Welke behandelingen vinden er plaats? Hoe vindt een opname plaats en wat zijn de bezoekregels? En welke afdelingen en poliklinieken behoren tot het brandwondencentrum?&lt;br /&gt;&lt;br /&gt;Op de website van Brandwondencentrum worden deze vragen uitegebreid beantwoord.&lt;br /&gt;&lt;br /&gt;Brandwondencentrum Beverwijk heeft speciaal voor kinderen en tieners een <a href='https://www.rkz.nl/het_kinderbrandwondencentrum'> </a>
</string>

【讨论】:

  • 这让它向下一点点,但现在只有最上面的线不可见..所以有些东西仍然不是 100% 正确。
【解决方案2】:

将您的 ScrollView 更改为,

<ScrollView
        android:id="@+id/scrollview"
        android:layout_width="fill_parent"
        android:layout_height="0dp"
        android:layout_weight="1" >

【讨论】:

  • 这并不能解决问题。它比平时向下滚动一点,但第一对行仍然不可见
【解决方案3】:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">


<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="left"
    android:layout_marginBottom="20dp"
    android:layout_marginLeft="38dp"
    android:src="@mipmap/ic_launcher" />

<ScrollView
    android:id="@+id/scrollview"
    android:layout_width="fill_parent"
    android:layout_height="0dp"
    android:layout_weight="1">

    <TextView
        android:id="@+id/textView"
        android:layout_width="244dp"
        android:layout_height="405dp"
        android:layout_gravity="center"
        android:gravity="start"
        android:text="@string/title_activity_bwc"
        android:textAppearance="?android:attr/textAppearanceSmall" />


</ScrollView>

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:layout_marginBottom="40dp"
    android:layout_marginTop="15dp"
    android:orientation="horizontal">

    <Button
        android:id="@+id/button11"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_marginRight="5dp"
        android:layout_weight="1"
        android:text="Facebook" />

    <Button
        android:id="@+id/button12"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:layout_weight="1"
        android:text="Youtube" />

    <Button
        android:id="@+id/button13"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_alignLeft="@+id/button5"
        android:layout_below="@+id/button8"
        android:layout_marginLeft="5dp"
        android:layout_weight="1"
        android:text="Twitter" />

    <Button
        android:id="@+id/button14"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_alignLeft="@+id/button5"
        android:layout_below="@+id/button8"
        android:layout_marginLeft="5dp"
        android:layout_weight="1"
        android:text="LinkedIn" />

</LinearLayout>

你的错误是文本视图高度大于滚动视图大小

【讨论】:

  • 那么我应该添加什么更改? android:gravity="start" 给我一个错误,并且滚动视图上的高度重量大小不会改变它。
  • 请检查你的textview和scrollview的高度
  • 你现在有什么问题?
  • 您的滚动视图高度为 352,文本视图大小为 405。使两者高度相等
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多