FC2ブログ
  • 館内放送 [ツイッター]

    キンコンカンコーン・・・うみゃーだよ。館内放送だみゃ。
    ・・・・・キンコンカンコーン・・・ブツ
  • 町内会からのお知らせ [相互RSS]

【技術部】[Android開発] ActivityからFragmentを生成し、変数も受け渡す手順


※カテゴリー【技術部】は技術者向けの記事となります。

ActivityからFragmentを呼び出し、値も渡します。


【目的】
ActivityからFragmentを呼び出し、変数も同時に渡す。






Activity側の実装

MainActivity.java
TestFragmentを生成し、変数を受け渡します。

package com.UMYA.matome_showtime;

import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.ActionBarActivity;
import android.view.View;

public class MainActivity extends ActionBarActivity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sub);

        // Fragment側に渡す変数を用意します。
     	Bundle args = new Bundle();  
     	args.putString("VALUE01", "変数の値1");
     	args.putString("VALUE02", "変数の値2");  

        // FragmentTransactionを生成。
        FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
        // TestFragmentを生成。
        TestFragment fragment = new TestFragment();
        //Fragmetnに渡す変数をセット
     	fragment.setArguments(args);
        // FragmentTransactionに、TestFragmentをセット
        transaction.add(R.id.layout_fragment, fragment);
        // FragmentTransactionをコミット
        transaction.commit();
 
    }
}


Fragment側の実装

TestFragment.java
Activity側から渡された変数をgetArguments()で取得する。

package com.UMYA.matome_showtime;

import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.View;

public class TestFragment extends Fragment{
    
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {
        View rootView = inflater.inflate(R.layout.fragment_pulltorefresh, container, false);
        return rootView;
    }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        // Activity側から渡された値を取得する。
        String strValue01 = getArguments().getString("VALUE01");
        String strValue02 = getArguments().getString("VALUE02");

    }
}



ご質問、ご意見等ありましたら下記コメントにご投稿お願いいたします。
関連記事
この記事へのリアクション

コメントの投稿

非公開コメント




タグ:Android 開発 Activity Fragment

プロフィール

うみゃー・アパカ

Author:うみゃー・アパカ
UMYA.net公式ブログです。
ツイッター:umya_net


リンクフリーです!
アドレス:http://umyanet.blog.fc2.com/

公式ホームページ

ラインスタンプ配信中!

リンク



スマホアプリ配信中

黄金疾走

スポンサード

人気商品

Powered by amaprop.net