【问题标题】:Why LinearLayout inside ScrollView of a Fragment is NULL object?为什么片段的 ScrollView 内的 LinearLayout 是 NULL 对象?
【发布时间】:2023-04-10 10:17:01
【问题描述】:

我正在尝试向 Fragment 动态添加多个视图:

@Override
    public View onCreateView(LayoutInflater inflater, 
    ViewGroup container, Bundle savedInstanceState) {


     ViewGroup vg = (ViewGroup) inflater.inflate(R.layout.fragment1, container, false);
     ViewGroup parent = (ViewGroup) getActivity().findViewById(R.id.linearLayoutOfFirstFragment);
     if (parent==null) 
     Toast.makeText(getActivity(), 
            "Null object " , 
            Toast.LENGTH_SHORT).show(); //findViewById(R.id.linearLayoutOfFirstFragment);
     myFirstView= (TextView)inflater.inflate(R.layout.mytextview, container, false);
     vg.addView(myFirstView);
     /*mySecondView= (TextView)inflater.inflate(R.layout.mytextview, container, false);
     parent.addView(mySecondView);

......

片段 1 的 XML - fragment1.xml:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
>
<LinearLayout 
  android:id="@+id/linearLayoutOfFirstFragment"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:background="#00FF00"/>
</ScrollView>

当顶部布局是线性布局时,我可以将它添加到片段中。 但是,当尝试在膨胀后将其添加到滚动视图内的线性布局时,得到线性布局对象 NULL。 我也应该膨胀线性布局,以便能够添加到它吗?怎么做? 先感谢您。

【问题讨论】:

    标签: android android-fragments android-linearlayout layout-inflater android-scrollview


    【解决方案1】:

    改变

    ViewGroup vg = (ViewGroup) inflater.inflate(R.layout.fragment1, container, false);
    ViewGroup parent = (ViewGroup) getActivity().findViewById(R.id.linearLayoutOfFirstFragment);
    

    ViewGroup vg = (ViewGroup) inflater.inflate(R.layout.fragment1, container, false);
     ViewGroup parent = (ViewGroup) vg.findViewById(R.id.linearLayoutOfFirstFragment);
    

    由于 linearLayoutOfFirstFragment 在 fragment1 内,你必须通过 vg 检索它

    【讨论】:

      猜你喜欢
      • 2016-05-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多