bytedance/scene

在androidX基础上开发DemoDialogWithDimScene有问题

Closed this issue · 7 comments

启动dialog 背景会闪一下 然后出现默认的灰色背景 android:windowBackground 设置会跟着变色,不设置默认灰白色

经过确认是在默认的启动动画完成以后出现背景色,比如.setAnimation(requireActivity(),R.anim.anim_10s, R.anim.anim_10s) 那么就是一开始背景是透明有效的,10以后出现默认默认的灰白色背景

qii commented

我拿最新的 master_androidx 分支上跑的,没看出来问题

我新建项目 按照使用说明引入使用 创建一个 DialogScene 马上就复现了

qii commented

我是直接拿的 master_androidx 分支跑的 DemoDialogWithDimScene

qii commented

我新建项目 按照使用说明引入使用 创建一个 DialogScene 马上就复现了

你是用的 Jetifier?

嗯。是的。
1、AS新建androidx类型项目
2、引入scene
3、创建MainScene
4、启动DemoDialogWithDimScene

public class MainScene extends AppCompatScene {
  private Button mButton;
  @Nullable @Override
  protected View onCreateContentView(@NonNull LayoutInflater inflater, @NonNull ViewGroup container,
      @Nullable Bundle savedInstanceState) {
      FrameLayout frameLayout = new FrameLayout(requireSceneContext());
      mButton = new Button(requireSceneContext());
      mButton.setText("Click");
      frameLayout.addView(mButton, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
          ViewGroup.LayoutParams.WRAP_CONTENT));
      return frameLayout;
  }

  @Override public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
      setTitle("Main");
      mButton.setOnClickListener(new View.OnClickListener() {
        @Override public void onClick(View v) {
          requireNavigationScene().push(DemoDialogWithDimScene.class);
        }
      });
    }
}
qii commented

你的 DemoDialogWithDimScene 得用透明的 PushOption
requireNavigationScene().push(DemoDialogWithDimScene.class, null, new PushOptions.Builder().setTranslucent(true).build());