Update video ui

pull/594/head
jhengazuki 3 months ago
parent 93eeb7abf2
commit b6da120477
  1. 12
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/LiveActivity.java
  2. 17
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/VideoActivity.java
  3. 10
      app/src/mobile/res/drawable/ic_control_full.xml
  4. 35
      app/src/mobile/res/layout-sw600dp/view_control_right.xml
  5. 34
      app/src/mobile/res/layout/view_control_live.xml
  6. 22
      app/src/mobile/res/layout/view_control_right.xml
  7. 76
      app/src/mobile/res/layout/view_control_vod.xml

@ -160,12 +160,12 @@ public class LiveActivity extends BaseActivity implements CustomKeyDown.Listener
@SuppressLint("ClickableViewAccessibility")
protected void initEvent() {
mBinding.control.seek.setListener(mPlayers);
mBinding.control.back.setOnClickListener(view -> onBack());
mBinding.control.cast.setOnClickListener(view -> onCast());
mBinding.control.info.setOnClickListener(view -> onInfo());
mBinding.control.play.setOnClickListener(view -> checkPlay());
mBinding.control.next.setOnClickListener(view -> nextChannel());
mBinding.control.prev.setOnClickListener(view -> prevChannel());
mBinding.control.right.back.setOnClickListener(view -> onBack());
mBinding.control.right.lock.setOnClickListener(view -> onLock());
mBinding.control.right.rotate.setOnClickListener(view -> onRotate());
mBinding.control.action.text.setOnClickListener(this::onTrack);
@ -312,6 +312,10 @@ public class LiveActivity extends BaseActivity implements CustomKeyDown.Listener
mBinding.group.scrollToPosition(position);
}
private void onBack() {
finish();
}
private void onCast() {
CastDialog.create().video(CastVideo.get(mBinding.control.title.getText().toString(), mPlayers.getUrl())).fm(false).show(this);
}
@ -320,10 +324,6 @@ public class LiveActivity extends BaseActivity implements CustomKeyDown.Listener
InfoDialog.create(this).title(mBinding.control.title.getText()).headers(mPlayers.getHeaders()).url(mPlayers.getUrl()).show();
}
private void onBack() {
finish();
}
private void onLock() {
setLock(!isLock());
mKeyDown.setLock(isLock());
@ -471,9 +471,9 @@ public class LiveActivity extends BaseActivity implements CustomKeyDown.Listener
mBinding.control.info.setVisibility(mPlayers.isEmpty() ? View.GONE : View.VISIBLE);
mBinding.control.cast.setVisibility(mPlayers.isEmpty() ? View.GONE : View.VISIBLE);
mBinding.control.right.rotate.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.right.back.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.center.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.bottom.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.back.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.top.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.getRoot().setVisibility(View.VISIBLE);
setR1Callback();

@ -311,16 +311,15 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
mBinding.director.setOnClickListener(view -> onDirector());
mBinding.name.setOnLongClickListener(view -> onChange());
mBinding.content.setOnLongClickListener(view -> onCopy());
mBinding.control.back.setOnClickListener(view -> onBack());
mBinding.control.cast.setOnClickListener(view -> onCast());
mBinding.control.info.setOnClickListener(view -> onInfo());
mBinding.control.full.setOnClickListener(view -> onFull());
mBinding.control.keep.setOnClickListener(view -> onKeep());
mBinding.control.play.setOnClickListener(view -> checkPlay());
mBinding.control.next.setOnClickListener(view -> checkNext());
mBinding.control.prev.setOnClickListener(view -> checkPrev());
mBinding.control.setting.setOnClickListener(view -> onSetting());
mBinding.control.title.setOnLongClickListener(view -> onChange());
mBinding.control.right.back.setOnClickListener(view -> onFull());
mBinding.control.right.lock.setOnClickListener(view -> onLock());
mBinding.control.right.rotate.setOnClickListener(view -> onRotate());
mBinding.control.danmaku.setOnClickListener(view -> onDanmakuShow());
@ -660,6 +659,11 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
return true;
}
private void onBack() {
if (isFullscreen()) toggleFullscreen();
else finish();
}
private void onCast() {
CastDialog.create().history(mHistory).video(CastVideo.get(mBinding.name.getText().toString(), mPlayers.getUrl(), mPlayers.getPosition())).fm(true).show(this);
}
@ -668,11 +672,6 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
InfoDialog.create(this).title(mBinding.control.title.getText()).headers(mPlayers.getHeaders()).url(mPlayers.getUrl()).show();
}
private void onFull() {
setR1Callback();
toggleFullscreen();
}
private void onKeep() {
Keep keep = Keep.find(getHistoryKey());
Notify.show(keep != null ? R.string.keep_del : R.string.keep_add);
@ -870,7 +869,6 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
if (isFullscreen()) return;
App.post(() -> mBinding.video.setLayoutParams(new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.MATCH_PARENT)), 50);
setRequestedOrientation(mPlayers.isPortrait() ? ActivityInfo.SCREEN_ORIENTATION_USER_PORTRAIT : ActivityInfo.SCREEN_ORIENTATION_SENSOR_LANDSCAPE);
mBinding.control.full.setVisibility(View.GONE);
setRotate(mPlayers.isPortrait(), true);
mPlayers.setDanmakuSize(1.0f);
Util.hideSystemUI(this);
@ -883,7 +881,6 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
if (!isFullscreen()) return;
setRequestedOrientation(isPort() ? ActivityInfo.SCREEN_ORIENTATION_USER_PORTRAIT : ActivityInfo.SCREEN_ORIENTATION_FULL_USER);
App.post(() -> mBinding.episode.scrollToPosition(mEpisodeAdapter.getPosition()), 50);
mBinding.control.full.setVisibility(View.VISIBLE);
mBinding.video.setLayoutParams(mFrameParams);
mPlayers.setDanmakuSize(0.8f);
setRotate(false, false);
@ -941,7 +938,6 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
mBinding.control.setting.setVisibility(mHistory == null || isFullscreen() ? View.GONE : View.VISIBLE);
mBinding.control.right.rotate.setVisibility(isFullscreen() && !isLock() ? View.VISIBLE : View.GONE);
mBinding.control.keep.setVisibility(mHistory == null || isFullscreen() ? View.GONE : View.VISIBLE);
mBinding.control.right.back.setVisibility(isFullscreen() && !isLock() ? View.VISIBLE : View.GONE);
mBinding.control.parse.setVisibility(isFullscreen() && isUseParse() ? View.VISIBLE : View.GONE);
mBinding.control.action.getRoot().setVisibility(isFullscreen() ? View.VISIBLE : View.GONE);
mBinding.control.right.lock.setVisibility(isFullscreen() ? View.VISIBLE : View.GONE);
@ -949,6 +945,7 @@ public class VideoActivity extends BaseActivity implements Clock.Callback, Custo
mBinding.control.cast.setVisibility(mPlayers.isEmpty() ? View.GONE : View.VISIBLE);
mBinding.control.center.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.bottom.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.back.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.top.setVisibility(isLock() ? View.GONE : View.VISIBLE);
mBinding.control.getRoot().setVisibility(View.VISIBLE);
setR1Callback();

@ -1,10 +0,0 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:tint="#FFFFFF"
android:viewportWidth="24"
android:viewportHeight="24">
<path
android:fillColor="@android:color/white"
android:pathData="M7,14L5,14v5h5v-2L7,17v-3zM5,10h2L7,7h3L10,5L5,5v5zM17,17h-3v2h5v-5h-2v3zM14,5v2h3v3h2L19,5h-5z" />
</vector>

@ -1,35 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/right"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:src="@drawable/ic_control_back" />
<ImageView
android:id="@+id/lock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="16dp"
android:layout_marginBottom="16dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:src="@drawable/ic_control_lock_off" />
<ImageView
android:id="@+id/rotate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:src="@drawable/ic_control_rotate" />
</LinearLayout>

@ -9,17 +9,22 @@
android:id="@+id/top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="8dp">
android:orientation="horizontal">
<ImageView
android:id="@+id/back"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:scaleType="center"
android:src="@drawable/ic_control_back" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:orientation="vertical"
android:paddingStart="8dp"
android:paddingTop="8dp"
android:paddingEnd="8dp">
android:orientation="vertical">
<TextView
android:id="@+id/title"
@ -28,7 +33,7 @@
android:ellipsize="marquee"
android:singleLine="true"
android:textColor="@color/white"
android:textSize="14sp"
android:textSize="12sp"
tools:text="CCTV-1" />
<TextView
@ -48,18 +53,18 @@
<ImageView
android:id="@+id/cast"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_cast" />
<ImageView
android:id="@+id/info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_info" />
</LinearLayout>
@ -126,8 +131,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="8dp" />
android:layout_centerVertical="true" />
<LinearLayout
android:id="@+id/bottom"

@ -6,30 +6,20 @@
android:gravity="center"
android:orientation="vertical">
<ImageView
android:id="@+id/back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:src="@drawable/ic_control_back" />
<ImageView
android:id="@+id/lock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="4dp"
android:layout_marginBottom="4dp"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_lock_off" />
<ImageView
android:id="@+id/rotate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_rotate" />
</LinearLayout>

@ -10,17 +10,22 @@
android:id="@+id/top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="8dp">
android:orientation="horizontal">
<ImageView
android:id="@+id/back"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:scaleType="center"
android:src="@drawable/ic_control_back" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_weight="1"
android:orientation="vertical"
android:paddingStart="8dp"
android:paddingTop="8dp"
android:paddingEnd="8dp">
android:orientation="vertical">
<TextView
android:id="@+id/title"
@ -29,7 +34,7 @@
android:ellipsize="marquee"
android:singleLine="true"
android:textColor="@color/white"
android:textSize="14sp"
android:textSize="12sp"
tools:text="慶餘年第一季:第一集" />
<TextView
@ -49,34 +54,34 @@
<ImageView
android:id="@+id/cast"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_cast" />
<ImageView
android:id="@+id/info"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_info" />
<ImageView
android:id="@+id/keep"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_keep_off" />
<ImageView
android:id="@+id/setting"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_setting" />
</LinearLayout>
@ -151,11 +156,10 @@
<ImageView
android:id="@+id/danmaku"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:layout_width="48dp"
android:layout_height="48dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="8dp"
android:scaleType="center"
android:src="@drawable/ic_control_danmaku_on" />
</LinearLayout>
@ -166,8 +170,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentEnd="true"
android:layout_centerVertical="true"
android:layout_marginEnd="8dp" />
android:layout_centerVertical="true" />
<LinearLayout
android:id="@+id/bottom"
@ -190,29 +193,12 @@
tools:itemCount="5"
tools:listitem="@layout/adapter_parse_dark" />
<LinearLayout
<com.fongmi.android.tv.ui.custom.CustomSeekView
android:id="@+id/seek"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal"
android:paddingStart="16dp"
android:paddingEnd="16dp">
<com.fongmi.android.tv.ui.custom.CustomSeekView
android:id="@+id/seek"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1" />
<ImageView
android:id="@+id/full"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="8dp"
android:background="?attr/selectableItemBackgroundBorderless"
android:src="@drawable/ic_control_full" />
</LinearLayout>
android:paddingEnd="16dp" />
<include
android:id="@+id/action"

Loading…
Cancel
Save