《第一行代码--android》笔记·第四章:碎片

一、tips

使用 android.support.v4.app.Fragment

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button = (Button) findViewById(R.id.button);
        button.setOnClickListener(this);
//        replaceFragment(new RightFragment());
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.button:
//                replaceFragment(new AnotherRightFragment());
                break;
            default:
                break;
        }
    }

//    private void replaceFragment(Fragment fragment) {
//        FragmentManager fragmentManager = getSupportFragmentManager();
//        FragmentTransaction transaction = fragmentManager.beginTransaction();
//        transaction.replace(R.id.right_layout, fragment);
//        transaction.addToBackStack(null);
//        transaction.commit();
//    }

}

FragmentManager;用来管理Fragment。

FragmentTransaction:用来对Fragment进行操作。

getSupportFragmentManager();获取该上下文中支持v4包的Fragment。

replace():替换布局与碎片。

addToBackStack():接受一个名字用于描述返回栈的状态。

活动与碎片之间的通信:

RightFragment rightFragment = (RightFragment) getSupportFragmentManager().findFragmentById(R.id.right_fragment);

MainActivity activity = (MainActivity) getActivity();

二、碎片的生命周期

包含:onCreate()/onStart()/onResume()/onPause()/onStop()/onDestroy()

增加:

onAttach():碎片与活动建立关联时调用。

onCreateView():为碎片创建视图时调用。

onActivityCreated():确保与碎片相关联的活动一定已经创建完毕时调用。

onDestroyView():当与碎片关联的视图被移除时调用。

onDetach():当碎片与活动解除关联时调用。

   

三、使用限定符

layout-sw600dp:提供给屏幕宽度大于等于600dp的设备。

猜你喜欢

转载自blog.csdn.net/fingers_xwk/article/details/81740454
今日推荐