修复主列表偶尔闪退问题 修复专辑混乱问题 修复播放界面到主列表动画错乱问题 修复主列表返回播放界面动画失效问题 修复专辑列表图片不显示问题 修复进入专辑详情时图片丢失问题 修复加载动画异常展示问题 修复文件下载遇到/处理成路径问题 优化文件下载遇到非200时不再下载 修复通知栏一直弹的问题 修复播放列表图片错乱问题 修复专辑列表返回键没反应问题 UI: 专辑列表新增播放全部功能 播放界面新增播放列表数量显示 点击播放模式会toast提示 改动: 主列表ListView改成RecyclerView 加载图片使用压缩后图片
231 lines
10 KiB
XML
231 lines
10 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<androidx.constraintlayout.widget.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=".views.MainActivity">
|
|
|
|
<FrameLayout
|
|
android:id="@+id/frameLayout"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="0dp"
|
|
app:layout_constraintBottom_toBottomOf="parent"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toTopOf="parent">
|
|
|
|
<ImageView
|
|
android:id="@+id/background_image"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:scaleType="fitXY"
|
|
android:src="@drawable/ic_launcher_background" />
|
|
|
|
<androidx.constraintlayout.widget.ConstraintLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent">
|
|
|
|
<ImageView
|
|
android:id="@+id/album_image"
|
|
android:layout_width="200dp"
|
|
android:layout_height="200dp"
|
|
android:layout_gravity="center"
|
|
android:layout_marginTop="150dp"
|
|
android:contentDescription="专辑图"
|
|
android:src="@drawable/ic_launcher_foreground"
|
|
android:transitionName="main_album_image"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toTopOf="parent" />
|
|
|
|
<cc.ibooker.ztextviewlib.MarqueeTextView
|
|
android:id="@+id/title"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginBottom="26dp"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="title"
|
|
android:textColor="@color/musicTitle"
|
|
android:textSize="24sp"
|
|
android:transitionName="title"
|
|
app:layout_constraintBottom_toTopOf="@+id/album_image"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="32dp"
|
|
android:layout_marginEnd="32dp"
|
|
android:orientation="vertical"
|
|
android:progressTint="#FF1313"
|
|
app:layout_constraintBottom_toTopOf="@+id/linearLayout"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent">
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:orientation="horizontal">
|
|
|
|
<TextView
|
|
android:id="@+id/positionTime"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="10dp"
|
|
android:layout_weight="1"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="00:00"
|
|
android:textColor="@color/textColorWhite" />
|
|
|
|
<TextView
|
|
android:id="@+id/bitRate"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:gravity="center"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="TextView"
|
|
android:textColor="@color/textColorWhite" />
|
|
|
|
<TextView
|
|
android:id="@+id/playIndex"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:gravity="right"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="(0/0)"
|
|
android:textColor="@color/textColorWhite" />
|
|
|
|
<TextView
|
|
android:id="@+id/durationTime"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginEnd="10dp"
|
|
android:layout_weight="1"
|
|
android:gravity="end"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="00:00"
|
|
android:textColor="@color/textColorGray" />
|
|
</LinearLayout>
|
|
|
|
<SeekBar
|
|
android:id="@+id/seekBar"
|
|
style="@style/Widget.AppCompat.ProgressBar.Horizontal"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:background="#000E0A0A"
|
|
android:backgroundTint="#D12828"
|
|
android:elevation="6dp"
|
|
android:max="100"
|
|
android:progressBackgroundTintMode="add"
|
|
android:progressTint="#EC1E1E"
|
|
android:textColor="@color/colorBlack"
|
|
android:transitionName="bar" />
|
|
</LinearLayout>
|
|
|
|
|
|
<LinearLayout
|
|
|
|
android:id="@+id/linearLayout"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="0dp"
|
|
android:gravity="center"
|
|
android:orientation="horizontal"
|
|
app:layout_constraintBottom_toTopOf="@+id/linearLayout2"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent">
|
|
|
|
<ImageButton
|
|
android:id="@+id/playModel"
|
|
android:layout_width="40dp"
|
|
android:layout_height="40dp"
|
|
android:layout_marginEnd="30dp"
|
|
android:scaleType="fitCenter"
|
|
app:srcCompat="@drawable/ic_play_random" />
|
|
|
|
<ImageButton
|
|
android:id="@+id/dislike"
|
|
android:layout_width="60dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="center"
|
|
android:layout_marginEnd="30dp"
|
|
android:src="@android:drawable/ic_media_previous"
|
|
android:transitionName="previous" />
|
|
|
|
<ImageButton
|
|
android:id="@+id/collection"
|
|
android:layout_width="60dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="center"
|
|
android:src="@android:drawable/ic_media_play"
|
|
android:transitionName="play" />
|
|
|
|
<ImageButton
|
|
android:id="@+id/top"
|
|
android:layout_width="60dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_gravity="center"
|
|
android:layout_marginStart="30dp"
|
|
android:layout_marginEnd="80dp"
|
|
android:src="@android:drawable/ic_media_next"
|
|
android:transitionName="next" />
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/linearLayout2"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="100dp"
|
|
android:gravity="center"
|
|
android:orientation="vertical"
|
|
app:layout_constraintBottom_toBottomOf="parent"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent">
|
|
|
|
<cc.ibooker.ztextviewlib.MarqueeTextView
|
|
android:id="@+id/album"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="album"
|
|
android:textColor="@color/textColorWhite"
|
|
android:textSize="20sp" />
|
|
|
|
<cc.ibooker.ztextviewlib.MarqueeTextView
|
|
android:id="@+id/artist"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:shadowColor="@color/colorBlack"
|
|
android:shadowDx="5"
|
|
android:shadowDy="5"
|
|
android:shadowRadius="1"
|
|
android:text="artist"
|
|
android:textColor="@color/textColorWhite"
|
|
android:textSize="20sp"
|
|
android:transitionName="artist" />
|
|
</LinearLayout>
|
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
|
|
</FrameLayout>
|
|
|
|
</androidx.constraintlayout.widget.ConstraintLayout> |