Monday, February 9, 2015

Belajar Android - Komunikasi Fragment ke Activity (Terakhir)

Berhubung mata ane ndak mau merem, dari tadi tiduran mata terpejam tapi hati tak mau merem, dan Otak pun melayang tak karuan menjelajah cerita tentang bayang - bayang rembulan yang mulai tenggelam ditelan malam. Ok, dilanjut pada catatan aja, kata-kata galaunya cukup segitu aja..:p

Pada Catatan Sebelumnya, ane telah menjelaskan bagaimana komunikasi Activity ke Fragment, dan catatan kali ini ane melanjutkan tentang kebalikan nya, bagaiman Komunikasi Fragment ke Aktivity.

Catatn sebelumnya :

1. Belajar Android - Fragment
2. Belajar Android - Komunikasi Activity ke Fragment


Komunikasi Fragment ke Activity

Buka kembali contoh app yang telah kita buat, karna kita akan  membuat / memfungsikan button FragmentB mengirim data ke main activity. Untuk mendapatkan instance activity dapat digunakan getActivity().

Pertama, buka layout activity_main.xml, tambahkan satu label/TextView dan beri nama id: tvPesanFragment, dan text Kiriman FragmentB, seperti contoh gambar di bawah:


Lanjut, buka Class MainActivity, tambahkan method peenulisan pesan di bawah ini :

public void pesan(String s){
TextView tvPesan = (TextView)findViewById(R.id.tvPesanFragmentB);
tvPesan.setText(s);

}

Kemudian lanjut lagi, buka layout fragment_b.xml, tambahkan sebuah button, beri nama id bPesanKeActivity, seperti gambar dibawah :



Lanjut lagi, buka Class FragmentB, tambahkan kode berikut dibawah, atribut yang di pake adalah listener. Buat FragmentB mengimplements OnClickListener dan Untuk mendapatkan activity, kita gunakan getActivity.

package com.belajarfragmentdinamis.yonandroid;

import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;

public class FragmentB extends Fragment implements OnClickListener {

@Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

         View v = inflater.inflate(R.layout.fragment_b, container, false);
         Button b = (Button) v.findViewById(R.id.bPesanKeActivity);
         b.setOnClickListener(this);
         return v; 
    }

@Override
public void onClick(View arg0) {
MainActivity ma = (MainActivity) getActivity();
ma.pesan("Hallo ini pesan dari Fragment B");

}

}

Kemudian lanjut, Jalankan/Run program, Click tombol FragmentB, kemudian click tombol Kirim ke Activity


 Udah, sekian dulu catatan singkatnya, karna ane juga lagi belajar. Dan jadi pembelajaran yang baik menurut ane adalah di baca dari berbagai refensi(dari google) lalu di praktekin sambil di bikin tulisan juga. semoga bermanfaat, mau lanjut galau lagi..:p

@ referensi dari berbagai sumber dari mbah google.

0 komentar: