試圖將片段添加到我的活動中,但未顯示出來。片段未顯示在活動中
public class MainActivity extends AppCompatActivity {
private static final String TAG = MainActivity.class.getSimpleName();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WeatherFragment mainFragment = new WeatherFragment();
getFragmentManager()
.beginTransaction()
.add(R.id.main_weather_container, mainFragment)
.commit();
}
}
而且還有我的片段:
public class WeatherFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
boolean isAttachedToParent = false;
View inflatedView = inflater.inflate(R.layout.main_weather_fragment, container, isAttachedToParent);
return inflatedView;
}
}
R.id.main_weather_container - FrameLayout裏在我的MainActivity。
R.layout.main_weather_fragment - 片段的佈局
我在做什麼錯了?
我試過使用FragmentActivity + v4支持片段和fragmentSupportManager,但它沒有任何區別。
MainActivity XML:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<FrameLayout
android:id="@+id/main_weather_container"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:padding="@dimen/padding_16_dp" />
<android.support.v7.widget.RecyclerView
android:id="@+id/words_recycler_view"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="3" />
</LinearLayout>
更新:這個問題是不是在片段交易或什麼的,我使用的工具:命名空間,這就是爲什麼沒有顯示的片段。比較遺憾的是:(
請使用'getSupportFragmentManager()'而不是'getFragmentManager()'來顯示你想要添加片段的xml片段 –
。 –
我已經提到支持片段管理器沒有幫助 –