gpt4 book ai didi

android - 动态地将 View 组添加到BottomSheetDialogFragment不会显示任何内容

转载 作者:行者123 更新时间:2023-12-03 10:12:14 27 4
gpt4 key购买 nike

我想制作一个仅在布局中包含标题的抽象BottomSheetDialogFragment,然后在其子类中动态添加自定义内容布局。但是,当我运行该程序时,它仅显示标题。

public abstract class BaseBottomSheetDialog extends BottomSheetDialogFragment {

@BindView(R.id.tvTitle)
TextView tvTitle;

@BindView(R.id.vgRoot)
LinearLayout vgRoot;

public abstract String getTittle();

@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {

BottomSheetDialog dialog = (BottomSheetDialog) super.onCreateDialog(savedInstanceState);

dialog.setOnShowListener(dialog1 -> {
BottomSheetDialog d = (BottomSheetDialog) dialog1;
FrameLayout bottomSheet = d.findViewById(com.google.android.material.R.id.design_bottom_sheet);
BottomSheetBehavior.from(bottomSheet).setState(BottomSheetBehavior.STATE_EXPANDED);
});
return dialog;
}

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_bottom_sheet, container, false);
ButterKnife.bind(this, view);
setContentViews();
return view;
}

public void setContentViews() {
tvTitle.setText(getTittle());
View content = LayoutInflater.from(getActivity()).inflate(R.layout.child_layout, vgRoot, false);
vgRoot.addView(content);
vgRoot.invalidate();

}
}

fragment_bottom_sheet.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/vgRoot"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">

<TextView
android:id="@+id/tvTitle" />

</LinearLayout>

child_layout.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout>
<!--child items-->

</LinearLayout>

任何帮助,将不胜感激。

最佳答案

尝试在片段的onActvitiyCreated()方法中调用setContentViews()方法。

关于android - 动态地将 View 组添加到BottomSheetDialogFragment不会显示任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58315064/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com