Mengenal Fragment pada Android Studio


Mengenal Fragment Pada Android Studio

Fragment merupakan komponen antar muka yang merupakan sebuah activity atau disebut juga sebagai sub-activity.
contoh fragment android :


Disini saya akan berbagi cara membuat aplikasi dengan fragment di Android Studio, langsung saja kita ke prosesnya.
1. Isi activity_main.xml
<android.support.design.widget.AppBarLayout    android:id="@+id/appbar"    android:layout_width="match_parent"    android:layout_height="wrap_content"    android:paddingTop="@dimen/appbar_padding_top"    android:theme="@style/AppTheme.AppBarOverlay">
    <android.support.v7.widget.Toolbar        android:id="@+id/toolbar"        android:layout_width="match_parent"        android:layout_height="?attr/actionBarSize"        android:layout_weight="1"        android:background="?attr/colorPrimary"        app:layout_scrollFlags="scroll|enterAlways"        app:popupTheme="@style/AppTheme.PopupOverlay"        app:title="Phone">
    </android.support.v7.widget.Toolbar>
    <android.support.design.widget.TabLayout        android:id="@+id/tabs"        android:layout_width="match_parent"        android:layout_height="wrap_content">
        <android.support.design.widget.TabItem            android:id="@+id/tabItem"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="Log" />
        <android.support.design.widget.TabItem            android:id="@+id/tabItem2"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="Contact" />
        <android.support.design.widget.TabItem            android:id="@+id/tabItem3"            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="Favorites" />
    </android.support.design.widget.TabLayout></android.support.design.widget.AppBarLayout>
<android.support.v4.view.ViewPager    android:id="@+id/container"    android:layout_width="match_parent"    android:layout_height="match_parent"    app:layout_behavior="@string/appbar_scrolling_view_behavior" />
<android.support.design.widget.FloatingActionButton    android:id="@+id/fab"    android:layout_width="wrap_content"    android:layout_height="wrap_content"    android:layout_gravity="end|bottom"    android:layout_margin="@dimen/fab_margin"    app:srcCompat="@android:drawable/ic_dialog_email" />

 2. Isi dari fragment_layout1.xml, disini saya memberikan nama layout1 supaya mudah dipahami dan dimengerti oleh pembaca, berikut source code nya.
<LinearLayout    android:layout_width="220dp"    android:layout_height="wrap_content"    android:layout_weight="2"    android:orientation="vertical">
    <TextView        android:layout_width="wrap_content"        android:layout_height="50dp"        android:textSize="18dp"        android:layout_gravity="center"        android:text="DAFTAR PANGGILAN"        android:textColor="#ffffff" />
    <LinearLayout        android:id="@+id/log1"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_weight="1"        android:onClick="log1"        android:orientation="horizontal">
        <ImageView            android:layout_width="60dp"            android:layout_height="70dp"            android:layout_gravity="left"            android:src="@drawable/log11" />

        <TextView            android:layout_width="match_parent"            android:layout_height="90dp"            android:textSize="20dp"            android:text="+682298380950 \n Ahmad Pratama"            android:textColor="#ffffff" />

    </LinearLayout>    <LinearLayout        android:id="@+id/log2"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_weight="1"        android:onClick="log2"        android:orientation="horizontal">
        <ImageView            android:layout_width="60dp"            android:layout_height="70dp"            android:layout_gravity="left"            android:src="@drawable/log2" />

        <TextView            android:layout_width="match_parent"            android:layout_height="70dp"            android:textSize="20dp"            android:text="+682298380950 \n Bawono Sudrajat"            android:textColor="#ffffff" />
    </LinearLayout>
</LinearLayout>

3. Mengaktifkan function onClick supaya dapat terbuka sub-Activity berikutnya. dengan cara membuat activity baru sesuai keinginan anda, berhubung saya membuat aplikasi phone maka saya menggunakan log sebagai next sub-activity. Berikut source code nya :
A. Activity_log.xml
 
<LinearLayout    android:layout_width="220dp"    android:layout_height="wrap_content"    android:layout_weight="2"    android:orientation="vertical">
    <TextView        android:layout_width="wrap_content"        android:layout_height="50dp"        android:textSize="18dp"        android:layout_gravity="center"        android:text="Panggilan Masuk"        android:textColor="#ffffff" />
    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_weight="1"        android:orientation="horizontal">
        <ImageView            android:layout_width="60dp"            android:layout_height="70dp"            android:layout_gravity="left"            android:src="@drawable/log11" />

        <TextView            android:layout_width="match_parent"            android:layout_height="100dp"            android:textSize="20dp"            android:text="+682298380950 \n Ahmad Pratama \n Jam : 18:00:32"            android:textColor="#ffffff" />

    </LinearLayout>    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_weight="1"        android:orientation="horizontal">
        <ImageView            android:layout_width="60dp"            android:layout_height="70dp"            android:layout_gravity="left"            android:src="@drawable/log11" />

        <TextView            android:layout_width="match_parent"            android:layout_height="90dp"            android:textSize="20dp"            android:text="+682298380950 \n Bawono Sudrajat \n Jam : 18:00:32"            android:textColor="#ffffff" />
    </LinearLayout></LinearLayout>

B. LogActivity.java

public class LogActivity extends AppCompatActivity {

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

 4. Menambahkan code pada MainActivity.java agar semuanya saling berhubungan. Berikut tambahan yang dimasukan :

public void log1(View view) {
    startActivity(new Intent(MainActivity.this,LogActivity.class));}
 
public class SectionsPagerAdapter extends FragmentPagerAdapter {

    public SectionsPagerAdapter(FragmentManager fm) {
        super(fm);    }

    @Override    public Fragment getItem(int position) {
          Fragment fragment = null;          switch (position){
              case 0:
                  fragment = new Fragment1();                  break;              case 1:
                  fragment = new Fragment2();                  break;              case 2:
                  fragment = new Fragment3();          }
          return fragment;        // getItem is called to instantiate the fragment for the given page.        // Return a PlaceholderFragment (defined as a static inner class below).        //return PlaceholderFragment.newInstance(position + 1);    }

    @Override    public int getCount() {
        // Show 3 total pages.        return 3;    }
} 
 

Komentar

Postingan populer dari blog ini