Fragment.onCreateView имеет нулевой контейнер

Следующее работает на Android 1.6, поэтому я использую пакет совместимости для фрагментов. В следующихTestFragment статический вложенный класс:

<code>public class FragmentTestActivity extends FragmentActivity {
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
}

public static class TestFragment extends Fragment {

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {
        TextView result = new TextView(getActivity());
        result.setText("Hello TestFragment");
        return result;
    }
}
</code>

}

Файл main.xml:

<code><FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent">
<fragment class="com.test.FragmentTestActivity$TestFragment"
        android:id="@+id/test"
        android:layout_width="fill_parent" android:layout_height="fill_parent" />
</FrameLayout>
</code>

Странно то, что параметр контейнера вonCreateView являетсяnull.

Теперь, если я добавлю фрагмент программно так (просто изменитеonCreate метод действия) контейнер больше не является нулевым. Зачем?

<code>public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    Fragment frag = new TestFragment();
    getSupportFragmentManager().beginTransaction().add(android.R.id.content, frag).commit();
}
</code>

Ответы на вопрос(1)

Ваш ответ на вопрос