Contoh Fragmen Android
September 15, 2020
Add Comment
Android Fragment adalah bagian dari aktivitas, juga dikenal sebagai sub-aktivitas. Ada lebih dari satu fragmen dalam suatu aktivitas. Fragmen mewakili beberapa layar dalam satu aktivitas.
Siklus hidup fragmen Android dipengaruhi oleh siklus hidup aktivitas karena fragmen disertakan dalam aktivitas.
Setiap fragmen memiliki metode siklus hidup (lifecycle) sendiri yang dipengaruhi oleh siklus hidup aktivitas karena fragmen tertanam dalam aktivitas.
Kelas FragmentManager bertanggung jawab untuk membuat interaksi antara objek fragmen.
Metode Siklus Hidup Fragmen Android
Metode | Deskripsi |
---|---|
onAttach(Activity) | itu disebut hanya sekali ketika dilampirkan dengan aktivitas. |
onCreate(Bundle) | Hal ini digunakan untuk menginisialisasi fragmen. |
onCreateView(LayoutInflater, ViewGroup, Bundle) | membuat dan mengembalikan hirarki tampilan. |
onActivityCreated(Bundle) | Hal ini dipanggil setelah selesainya onCreate() metode. |
onViewStateRestored(Bundle) | Ini memberikan informasi ke fragmen bahwa semua keadaan disimpan hirarki tampilan fragmen telah dipulihkan. |
onStart() | membuat fragmen terlihat. |
onResume() | membuat fragmen interaktif. |
onPause() | disebut ketika fragmen tidak lagi interaktif. |
onStop() | disebut ketika fragmen tidak lagi terlihat. |
onDestroyView() | memungkinkan fragmen untuk membersihkan sumber daya. |
onDestroy() | memungkinkan fragmen untuk melakukan pembersihan akhir dari keadaan fragmen. |
onDetach() | Hal ini disebut segera sebelum fragmen tidak lagi dikaitkan dengan aktivitasnya. |
Contoh Fragmen Android
Mari kita lihat contoh sederhana dari fragmen android.
# Main Activity
File : activity_main.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent" android:layout_height="fill_parent" tools:context="example.android.com.fragmentexample.MainActivity"> <fragment android:id="@+id/fragment1" android:name="example.android.com.fragmentexample.Fragment1" android:layout_width="0px" android:layout_height="match_parent" android:layout_weight="1" /> <fragment android:id="@+id/fragment2" android:name="example.android.com.fragmentexample.Fragment2" android:layout_width="0px" android:layout_height="match_parent" android:layout_weight="1" /> </LinearLayout>
File : fragment_fragment1.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#F5F5DC" tools:context="example.android.com.fragmentexample.Fragment1"> <!-- TODO: Update blank fragment layout --> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/hello_blank_fragment" /> </FrameLayout>
File : fragment_fragment2.xml
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#F0FFFF" tools:context="example.android.com.fragmentexample.Fragment2"> <!-- TODO: Update blank fragment layout --> <TextView android:layout_width="match_parent" android:layout_height="match_parent" android:text="@string/hello_blank_fragment" /> </FrameLayout>
# MainActivity class
File : MainActivity.java
package example.android.com.fragmentexample; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }
File : Fragment1.java
package example.android.com.fragmentexample; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class Fragment1 extends Fragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_fragment1, container, false); } }
File : Fragment2.java
package example.android.com.fragmentexample; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; public class Fragment2 extends Fragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // Inflate the layout for this fragment return inflater.inflate(R.layout.fragment_fragment2, container, false); } }
Output :
0 Response to "Contoh Fragmen Android"
Posting Komentar