Android Fragmentデータ転送方法

741 ワード

Fragmentがデータを渡すには構造方法を用いてもよいし,カスタムでデータを渡す方法を用いてもよいが,以上の2つの方法は弊害があり使用を推奨しない.bundleを使用してデータを渡すことをお勧めします.Fragmentでは次のように定義されています.
private String url;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        savedInstanceState = getArguments();
        if (savedInstanceState != null) {
            url = savedInstanceState.getString("url");
        }
    }

    public static MyFragment newInstance(String url) {
        Bundle argz = new Bundle();
        argz.putString("url", url);
        MyFragment fragment = new MyFragment ();
        fragment.setArguments(argz);
        return fragment;
    }
これにより,この静的メソッドを外部で直接呼び出してデータを伝達することができる.