gpt4 book ai didi

java - ConstraintLayout 内 RecyclerView 内的 Center ProgressBar

转载 作者:行者123 更新时间:2023-12-01 20:21:23 26 4
gpt4 key购买 nike

我有一个 ProgressBar,它是 RecyclerView 的一个项目,并按照本教程 Android RecyclerView dynamically load more items when scroll to end with bottom ProgressBar 使用适配器添加到那里。 .

但我没有在 activity_main.xml 文件中使用 RelativeLayout,而是使用默认的 ConstraintLayout。对我来说,问题是 ProgressBar 未居中。

请在下面找到我上面描述的布局:

进度条项目

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">

<ProgressBar
android:id="@+id/progressbar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" />

</LinearLayout>

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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="me.bookquotes.quotes.MainActivity">

<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="0dp"
android:layout_height="wrap_content"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
android:background="?attr/colorPrimary"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" />

<android.support.v7.widget.RecyclerView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintTop_toBottomOf="@+id/toolbar"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />

</android.support.constraint.ConstraintLayout>

下面是左侧显示的 ProgressBar 的屏幕截图(我需要将其居中):

Non-centered progress bar

最佳答案

我仔细研究了您的问题,但完全不清楚发生了什么。我已经采取了示例项目并将您的更改应用到布局中,它工作得很好。 (我确实删除了 tools 引用并更改了几个 id。)

这是GitHub project仅对上面的两个布局进行了更改。这是video of this modified app如预期的那样在中心显示进度条。

我认为这是一个约束问题,但正如您从演示中看到的那样,事实并非如此。

这也可能与您正在运行的 ConstraintLayout 版本或其他一些配置相关,因此您可能需要检查一下。否则,看起来就像是发生了其他尚未透露的事情。您是否对布局小部件进行任何其他操作?

了解布局中哪些内容未对齐会很有用。为 LinearLayout 指定背景颜色,看看它是否延伸到屏幕上。这将告诉您进度条是否未对齐或 LinearLayout 是否被挤压。

<小时/>

另一种可能性:您是否未能在 LinearLayout 的膨胀中命名父级?说这样的话:

View view = LayoutInflater.from(activity).inflate(R.layout.item_loading, null, false);

而不是这个

View view = LayoutInflater.from(activity).inflate(R.layout.item_loading, parent, false);

这个微小的差异会将你的进度条推到一边。

关于java - ConstraintLayout 内 RecyclerView 内的 Center ProgressBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44620749/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com