zhibo/android-app/app/src/main/res/layout/activity_call.xml

241 lines
9.5 KiB
XML
Raw Normal View History

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#1A1A2E">
<!-- 背景模糊头像(语音通话时显示) -->
<ImageView
android:id="@+id/ivBackgroundAvatar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:scaleType="centerCrop"
android:alpha="0.3" />
<!-- 视频通话时的远程视频容器 -->
<FrameLayout
android:id="@+id/layoutRemoteVideo"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone" />
<!-- 视频通话时的本地视频容器(小窗口) -->
<FrameLayout
android:id="@+id/layoutLocalVideo"
android:layout_width="120dp"
android:layout_height="160dp"
android:layout_gravity="top|end"
android:layout_marginTop="80dp"
android:layout_marginEnd="16dp"
android:background="#333333"
android:visibility="gone" />
<!-- 主内容区域 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center_horizontal">
<!-- 顶部状态栏 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center_vertical"
android:padding="16dp"
android:layout_marginTop="24dp">
<ImageButton
android:id="@+id/btnMinimize"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:src="@drawable/ic_arrow_back"
app:tint="@android:color/white" />
<TextView
android:id="@+id/tvCallType"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:gravity="center"
android:text="语音通话"
android:textColor="@android:color/white"
android:textSize="16sp" />
<ImageButton
android:id="@+id/btnSwitchCamera"
android:layout_width="40dp"
android:layout_height="40dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:src="@drawable/ic_switch_camera"
android:visibility="gone"
app:tint="@android:color/white" />
</LinearLayout>
<!-- 用户信息区域 -->
<LinearLayout
android:id="@+id/layoutUserInfo"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:orientation="vertical"
android:gravity="center"
android:paddingTop="60dp">
<de.hdodenhof.circleimageview.CircleImageView
android:id="@+id/ivAvatar"
android:layout_width="120dp"
android:layout_height="120dp"
android:src="@drawable/ic_default_avatar"
app:civ_border_color="#FFFFFF"
app:civ_border_width="3dp" />
<TextView
android:id="@+id/tvUserName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:text="用户名"
android:textColor="@android:color/white"
android:textSize="24sp"
android:textStyle="bold" />
<TextView
android:id="@+id/tvCallStatus"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="12dp"
android:text="正在呼叫..."
android:textColor="#AAAAAA"
android:textSize="16sp" />
<TextView
android:id="@+id/tvCallDuration"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="00:00"
android:textColor="@android:color/white"
android:textSize="18sp"
android:visibility="gone" />
</LinearLayout>
<!-- 底部控制按钮 -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:paddingBottom="60dp">
<!-- 通话中的控制按钮 -->
<LinearLayout
android:id="@+id/layoutCallControls"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center"
android:visibility="gone">
<!-- 静音按钮 -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_marginHorizontal="20dp">
<ImageButton
android:id="@+id/btnMute"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="@drawable/bg_call_button"
android:src="@drawable/ic_mic"
app:tint="@android:color/white" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="静音"
android:textColor="@android:color/white"
android:textSize="12sp" />
</LinearLayout>
<!-- 免提按钮 -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_marginHorizontal="20dp">
<ImageButton
android:id="@+id/btnSpeaker"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="@drawable/bg_call_button"
android:src="@drawable/ic_speaker"
app:tint="@android:color/white" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="免提"
android:textColor="@android:color/white"
android:textSize="12sp" />
</LinearLayout>
<!-- 视频按钮(仅视频通话显示) -->
<LinearLayout
android:id="@+id/layoutVideoToggle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical"
android:gravity="center"
android:layout_marginHorizontal="20dp"
android:visibility="gone">
<ImageButton
android:id="@+id/btnVideo"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="@drawable/bg_call_button"
android:src="@drawable/ic_videocam"
app:tint="@android:color/white" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="摄像头"
android:textColor="@android:color/white"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
<!-- 挂断按钮 -->
<ImageButton
android:id="@+id/btnHangup"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginTop="30dp"
android:background="@drawable/bg_hangup_button"
android:src="@drawable/ic_call_end"
app:tint="@android:color/white" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:text="挂断"
android:textColor="@android:color/white"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
</FrameLayout>