如何使 ConstraintLayout 跟踪我在 ProgressBar 中的进度

how to make ConstraintLayout to follow my progress in ProgressBar

提问人:gojic 提问时间:7/14/2021 更新时间:7/14/2021 访问量:52

问:

我知道这个网站上有这样的问题,但无法将他们的解决方案应用于我的问题,或者根本不知道如何。我正在尝试将我的 ConstraintLayout 作为我的布局的一部分放在我的进度末尾,如下所示:

enter image description here

但在我的情况下,它总是在进度条的中心

我的 XML:

 <androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ProgressBar
        android:id="@+id/seekBar2"
        style="@style/Widget.AppCompat.ProgressBar.Horizontal"
        android:layout_width="match_parent"
        android:layout_height="6dp"
        android:layout_marginStart="8dp"
        android:layout_marginTop="8dp"
        android:layout_marginEnd="8dp"
        android:layout_marginBottom="8dp"
        android:progress="60"
        android:progressDrawable="@drawable/customprogressbar"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/goal_name_TV" />

    <androidx.constraintlayout.widget.ConstraintLayout
        android:id="@+id/thumb"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="@drawable/tv_content_rounded"
        android:paddingStart="8dp"
        android:paddingTop="2dp"
        android:paddingEnd="8dp"
        android:paddingBottom="2dp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/goal_name_TV">

        <ImageView
            android:id="@+id/bullet_IMG"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:paddingEnd="2dp"
            android:src="@drawable/ic_bulet_blue"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toStartOf="@+id/marker_value"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent" />

        <TextView
            android:id="@+id/marker_value"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="985"
            android:textColor="@color/background"
            android:textSize="12sp"
            app:layout_constraintBottom_toBottomOf="parent"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintStart_toEndOf="@+id/bullet_IMG"
            app:layout_constraintTop_toTopOf="parent" />
    </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

还有我的 Java:

 binding.seekBar2.setProgress((int) modelClass.getPercentage());
        binding.markerValue.setText(binding.seekBar2.getProgress()+"%");
        int position = (((binding.seekBar2.getRight() - binding.seekBar2.getLeft()/binding.seekBar2.getMax()) * binding.seekBar2.getProgress())+ binding.seekBar2.getLeft());
        binding.thumb.setTranslationX((float) ((double)position - (binding.thumb.getWidth()/2)));

我也试图制作自定义 progrssbar,但徒劳无功

java android-进度条

评论


答: 暂无答案