利用framelayout分页
实现类似qq主界面的分页面式管理(该控件需要引用android.support.v4.jar),主界面Mainactivity.xml
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:clipChildren="false"
android:clipToPadding="false"/>
MainActivity.java
//该类需继承FragmentActivity
//改变framelayout所显示界面
FragmentManager manager = getFragmentManager();
FragmentTransaction transaction = manager.beginTransaction();
fragment1 fragment = new fragment1();//fragment1为你新建的要添加到framelayout中的.xml文件所关联的.java类
transaction.replace(R.id.fragment_container,fragment);//替换framelayout当前所显示的fragment没有就直接覆盖上去
//另一种添加fragment方法为transaction.add(R.id.fragment_container, fragment);这种为直接覆盖上去不建议用
transaction.commit();
framelayout添加fragment的方法就相当于让一个布局加载其他页面的思路,其他页面在这个布局中显示
fragment1.java//它关联一个.xml布局文件
public class fragment1 extends Fragment {
private ImageButton b_robot;
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View view = getActivity().getLayoutInflater().inflate(R.layout.activity_main2, null);//view关联视图
b_robot = (ImageButton) view.findViewById(R.id.imageButton8);//关联视图中的空间
//点击事件及页面跳转
b_robot.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
MainActivity.setButtonFocusChanged(b_robot);
Intent intent = new Intent(getActivity(), CarActivity.class);
startActivity(intent);
}
});
return view;//最后需要返回所关联的视图
}
}