代码基本与上一篇blog一样 少量更改
1布局
activity_main.xml
<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="horizontal"
tools:context=".MainActivity" >
</LinearLayout>
fragment1.xml
fragment2.xml 都没有变化
2 3个类
Fragment1.java
Fragment2.java
MainActivity.java
只有Mainactivity有变化 其余不变
package com.example.a119fragmentstart;
import android.os.Bundle;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.view.Menu;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 判断屏幕朝向 读取宽高
int width = getWindowManager().getDefaultDisplay().getWidth();
int height = getWindowManager().getDefaultDisplay().getHeight();
Fragment1 fragment1 = new Fragment1();
Fragment2 fragment2 = new Fragment2();
FragmentManager fm = getFragmentManager();
// 事务
FragmentTransaction ft = fm.beginTransaction();
if (width > height) {
// 水平方向
ft.replace(android.R.id.content, fragment1);
} else {
// 垂直方向
ft.replace(android.R.id.content, fragment2);
}
ft.commit();
}
}
测试时要将屏幕自动横竖屏打开 我的手机是 设置-显示-自动旋转屏幕 虚拟机ctrl+F11切换横竖屏