pull/586/head
FongMi 2 years ago
parent e28b21fcc7
commit fa604bcb33
  1. 2
      app/build.gradle
  2. 12
      app/src/main/java/com/fongmi/android/tv/ui/dialog/BaseDialog.java
  3. 14
      app/src/main/java/com/fongmi/android/tv/ui/dialog/SubtitleDialog.java
  4. 5
      app/src/main/java/com/fongmi/android/tv/utils/ResUtil.java
  5. 1
      app/src/mobile/res/layout/dialog_subtitle.xml

@ -14,7 +14,7 @@ android {
//noinspection ExpiredTargetSdkVersion
targetSdk 28
versionCode 258
versionName "0904"
versionName "0905"
javaCompileOptions {
annotationProcessorOptions {
arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]

@ -13,6 +13,8 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.R;
import com.fongmi.android.tv.utils.ResUtil;
import com.google.android.material.bottomsheet.BottomSheetBehavior;
import com.google.android.material.bottomsheet.BottomSheetDialog;
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
@ -39,6 +41,15 @@ public abstract class BaseDialog extends BottomSheetDialogFragment {
protected void initEvent() {
}
protected boolean transparent() {
return false;
}
protected void setDimAmount(float amount) {
getDialog().getWindow().setDimAmount(amount);
getDialog().getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
}
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
@ -50,6 +61,7 @@ public abstract class BaseDialog extends BottomSheetDialogFragment {
private void setBehavior(BottomSheetDialog dialog) {
FrameLayout bottomSheet = dialog.findViewById(com.google.android.material.R.id.design_bottom_sheet);
if (transparent()) bottomSheet.setBackgroundColor(ResUtil.getColor(R.color.transparent));
BottomSheetBehavior<FrameLayout> behavior = BottomSheetBehavior.from(bottomSheet);
behavior.setState(BottomSheetBehavior.STATE_EXPANDED);
behavior.setSkipCollapsed(true);

@ -3,6 +3,7 @@ package com.fongmi.android.tv.ui.dialog;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
@ -14,6 +15,7 @@ import androidx.viewbinding.ViewBinding;
import com.fongmi.android.tv.Setting;
import com.fongmi.android.tv.databinding.DialogSubtitleBinding;
import com.fongmi.android.tv.utils.ResUtil;
import com.github.bassaer.library.MDColor;
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
public final class SubtitleDialog extends BaseDialog {
@ -41,11 +43,22 @@ public final class SubtitleDialog extends BaseDialog {
show(activity.getSupportFragmentManager(), null);
}
@Override
protected boolean transparent() {
return full;
}
@Override
protected ViewBinding getBinding(@NonNull LayoutInflater inflater, @Nullable ViewGroup container) {
return binding = DialogSubtitleBinding.inflate(inflater, container, false);
}
@Override
protected void initView() {
int count = binding.getRoot().getChildCount();
if (full) for (int i = 0; i < count; i++) ((ImageView) binding.getRoot().getChildAt(i)).getDrawable().setTint(MDColor.WHITE);
}
@Override
protected void initEvent() {
binding.up.setOnClickListener(this::onUp);
@ -85,6 +98,7 @@ public final class SubtitleDialog extends BaseDialog {
@Override
public void onResume() {
super.onResume();
if (full) setDimAmount(0.5f);
getDialog().getWindow().setLayout(ResUtil.dp2px(216), -1);
}
}

@ -16,6 +16,7 @@ import android.view.animation.AnimationUtils;
import androidx.annotation.AnimRes;
import androidx.annotation.ArrayRes;
import androidx.annotation.ColorRes;
import androidx.annotation.DrawableRes;
import androidx.annotation.StringRes;
import androidx.core.content.ContextCompat;
@ -112,6 +113,10 @@ public class ResUtil {
return ContextCompat.getDrawable(App.get(), resId);
}
public static int getColor(@ColorRes int resId) {
return ContextCompat.getColor(App.get(), resId);
}
public static Animation getAnim(@AnimRes int resId) {
return AnimationUtils.loadAnimation(App.get(), resId);
}

@ -3,6 +3,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center"
android:padding="8dp">
<ImageView

Loading…
Cancel
Save