gpt4 book ai didi

java - 在 OnCreateView 调用之外动态添加 View 到 fragment

转载 作者:行者123 更新时间:2023-11-29 20:48:20 25 4
gpt4 key购买 nike

我已经查看了大约 12 个 SO 帖子,并阅读了关于 Activity 和 Fragments 的文档。

我有一个我认为非常普遍的问题,但也许我遗漏了一些基本问题。

我有一个 fragment 。该 fragment 正在从 Java 而不是 XML 创建其 View 。在运行时,我想向其中添加图像。我已经尝试将 View 添加到 viewgroupd,创建一个 LinearLayout 并将其添加到 View ,以及其他一些东西,但它们都不起作用。我经常遇到崩溃(没有错误日志 :?()。

这是我最好的尝试代码:

iImage image = new iImage(getActivity());
image.setImageResource(R.drawable.image);
LinearLayout.LayoutParams imageParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT);
image.setLayoutParams(imageParams);
((ViewGroup)getFragmentManager().findFragmentById(resourceId).getView()).addView(image);

如果您能建议我如何向 fragment 添加 View ,我将不胜感激!

最佳答案

你有一个非常普遍的问题。解决方案是为您的膨胀 View 保留一个私有(private)变量,您可以稍后使用它......无论在哪里。在此示例中,我假设您的根布局(XML 中最顶层的元素)是 LinearLayout

public class DummyFragment extends Fragment {

private LinearLayout root;

@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
LinearLayout = (LinearLayout) inflater.inflate(R.layout.dummy_fragment_layout, container, false);
return root;
}

}

关于java - 在 OnCreateView 调用之外动态添加 View 到 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29830286/

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