【问题标题】:Adding items at the bottom of an Activity在 Activity 底部添加项目
【发布时间】:2018-03-29 09:54:31
【问题描述】:

我真的不知道如何正确地用这个词,所以我问了这个问题。如果有人可以向我指出可以解释这一点的资源,那就太好了。

我有一个已用完所有空间的 android 活动。我希望能够在此活动的底部添加项目,用户可以向下滚动查看。例如,像网页一样,向下滚动时会有更多内容。我怎样才能在 android studio 上做到这一点?

谢谢。

我的 XML 文件:

      <?xml version="1.0" encoding="utf-8"?>
    <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.john.myTestApp.MenuController">

    <android.support.constraint.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent">

  <TextView
    android:id="@+id/venueName"
    android:layout_width="0dp"
    android:layout_height="75dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:gravity="center"
    android:text="TextView"
    android:textSize="30sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/venueImage" />

<ImageView
    android:id="@+id/venueImage"
    android:layout_width="0dp"
    android:layout_height="265dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="20dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.437"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/my_toolbar"
    app:srcCompat="@drawable/common_google_signin_btn_icon_dark" />

<TextView
    android:id="@+id/addressTextView"
    android:layout_width="374dp"
    android:layout_height="65dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:gravity="center"
    android:text="TextView"
    android:textSize="20sp"
    app:layout_constraintEnd_toStartOf="@+id/phoneNumberTextView"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/venueName" />

<TextView
    android:id="@+id/phoneNumberTextView"
    android:layout_width="273dp"
    android:layout_height="66dp"
    android:layout_marginEnd="72dp"
    android:layout_marginStart="106dp"
    android:gravity="center"
    android:text="TextView"
    android:textSize="20sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toEndOf="@+id/addressTextView"
    app:layout_constraintTop_toBottomOf="@+id/venueName" />

<TextView
    android:id="@+id/urlTextView"
    android:layout_width="0dp"
    android:layout_height="72dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:gravity="center"
    android:text="TextView"
    android:textSize="20sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.497"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/phoneNumberTextView" />

<TextView
    android:id="@+id/ammenititesTextView"
    android:layout_width="0dp"
    android:layout_height="58dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:gravity="center"
    android:text="TextView"
    android:textSize="20sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/openingClosingTextView" />

<TextView
    android:id="@+id/openingClosingTextView"
    android:layout_width="0dp"
    android:layout_height="64dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:gravity="center"
    android:text="TextView"
    android:textSize="20sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/urlTextView" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="0dp"
    android:layout_height="53dp"
    android:layout_marginEnd="8dp"
    android:layout_marginStart="8dp"
    android:layout_marginTop="13dp"
    android:gravity="center"
    android:text="Fixtures"
    android:textColor="@android:color/black"
    android:textSize="20sp"
    android:textStyle="normal"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/viewMapbtn" />

<ListView
    android:id="@+id/venueFixtureListVIew"
    android:layout_width="587dp"
    android:layout_height="235dp"
    android:layout_marginEnd="110dp"
    android:layout_marginStart="110dp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/textView2" />

<Button
    android:id="@+id/viewMapbtn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="153dp"
    android:layout_marginStart="104dp"
    android:layout_marginTop="12dp"
    android:text="View on Map"
    app:layout_constraintEnd_toStartOf="@+id/getDirectionsBtn"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toBottomOf="@+id/ammenititesTextView" />

<Button
    android:id="@+id/getDirectionsBtn"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginEnd="93dp"
    android:layout_marginStart="153dp"
    android:layout_marginTop="12dp"
    android:text="Get Directions"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintStart_toEndOf="@+id/viewMapbtn"
    app:layout_constraintTop_toBottomOf="@+id/ammenititesTextView" />

<android.support.v7.widget.Toolbar
    android:id="@+id/my_toolbar"
    android:layout_width="match_parent"
    android:layout_height="64dp"
    android:background="?attr/colorPrimary"
    android:elevation="4dp"
    android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />

    </android.support.constraint.ConstraintLayout>


     </ScrollView>

【问题讨论】:

  • 您需要使用ScrollView 允许用户滚动查看屏幕上的所有控件/项目
  • 你问的是如何添加滚动视图?
  • 过去你的 xml 文件
  • 把你的xml文件代码放在这里。
  • 在你的 XML 中使用 ScrollView

标签: java android


【解决方案1】:

下面的代码是展示如何在开始和结束之间使用scrollview,你可以使用你的TextViewEditText任何你想要的东西

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:scrollbars="none"
    >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

     //ADD HEAR LIKE EditText TextView anything  
 </LinearLayout>

【讨论】:

  • 你确定LinearLayout的高度应该是match_parent吗?我想我会尝试 wrap_content。
  • 你可以使用 wrap_content 但这是我的示例,我会从 LinearLayout 中删除很多内容,所以这是我的错误,我会更改它:) 谢谢@Thomas
  • 我已经实现了你的建议,谢谢。您将如何在滚动视图中设置这些文本视图和小部件的约束?
  • LinearLayout 你可以添加你的 Widgets
  • 这很有用,然后标记为其他用户的答案,如果没有告诉我问题是什么@LogitechNumberOne
【解决方案2】:

这取决于您的Activity 的内容是静态的还是动态的。静态是指您有一个通过setContentView(R.layout.xyz) 显示的布局文件 (xyz.xml)。如果是这种情况,只需将您的根视图组放入 &lt;ScrollView ... /&gt;

如果您有动态内容,则取决于这是否是类似列表的数据。如果是这样,请使用&lt;ListView /&gt;&lt;RecyclerView /&gt;。对于其他类型的数据,建议&lt;LinearLayout /&gt; 并从代码中添加内容。

【讨论】:

  • 我的布局是静态的,但它是一个约束布局。
  • 您可以将 ConstraintsLayout 包装在 ScrollView 中。看到这个答案:stackoverflow.com/a/37545728/5956451 曾经有一个错误阻止了这个,但它已经被修复了。
猜你喜欢
  • 2021-07-26
  • 1970-01-01
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多