nas-music-player/app/src/main/res/layout/activity_main.xml
Yutousama fb21c238d0 修复:
修复主列表偶尔闪退问题
修复专辑混乱问题
修复播放界面到主列表动画错乱问题
修复主列表返回播放界面动画失效问题
修复专辑列表图片不显示问题
修复进入专辑详情时图片丢失问题
修复加载动画异常展示问题
修复文件下载遇到/处理成路径问题
优化文件下载遇到非200时不再下载
修复通知栏一直弹的问题
修复播放列表图片错乱问题
修复专辑列表返回键没反应问题
UI:
专辑列表新增播放全部功能
播放界面新增播放列表数量显示
点击播放模式会toast提示
改动:
主列表ListView改成RecyclerView
加载图片使用压缩后图片
2022-05-18 18:42:59 +08:00

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>