Tuesday, September 12, 2017

Cara Membuat About App Menggunakan BottomSheetDialogFragment

Cara Membuat About App Dengan BottomSheetDialogFragment
Android Studio
السَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُه sobat 48😁. Kali ini saya akan membagikan sebuah artikel yang membahas tentang Cara Membuat About App Menggunakan BottomSheetDialogFragment dengan Android Studio. Jika kalian bingung seperti apa gambarannya, ini saya kasih contohnya :
About App
About App
Berikut langkah-langkahnya:
1. Pertama Anda harus tambahkan library support design v26 dulu di gradle


compile 'com.android.support:design:26.+'

2. Buat layout content_about.xml dengan isi sebagai berikut :


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:id="@+id/bAbout"
   android:orientation="vertical" android:layout_width="match_parent"
   android:layout_height="match_parent">
    <LinearLayout
       android:gravity="center_vertical"
       android:paddingLeft="10dp"
       android:paddingRight="10dp"
       android:layout_width="match_parent"
       android:layout_height="?attr/actionBarSize"
       android:background="@color/colorPrimary">
        <TextView
           android:textColor="@android:color/white"
           android:textStyle="bold"
           android:textSize="16sp"
           android:text="@string/tentang_aplikasi"
           android:layout_width="wrap_content"
           android:layout_height="wrap_content" />
        </LinearLayout>
    <LinearLayout
       android:padding="10dp"
       android:orientation="vertical"
       android:layout_width="match_parent"
       android:layout_height="wrap_content">
        <LinearLayout
           android:orientation="horizontal"
           android:layout_width="match_parent"
           android:layout_height="wrap_content">
            <ImageView
               android:layout_gravity="center_vertical"
               android:scaleType="fitCenter"
               android:src="@mipmap/ic_launcher"
               android:layout_width="46dp"
               android:layout_height="46dp" />
            <LinearLayout
               android:layout_marginLeft="10dp"
               android:layout_gravity="center_vertical"
               android:orientation="vertical"
               android:layout_width="match_parent"
               android:layout_height="wrap_content">
                <TextView
                   android:textStyle="bold"
                   android:textSize="16sp"
                   android:textColor="@color/colorPrimary"
                   android:text="@string/app_name"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content" />
                <TextView
                   android:text="@string/tentang_versi"
                   android:id="@+id/mVersi"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content" />
            </LinearLayout>
        </LinearLayout>
        <LinearLayout
           android:layout_marginTop="10dp"
           android:orientation="horizontal"
           android:layout_width="match_parent"
           android:layout_height="wrap_content">
            <ImageView
               android:layout_gravity="center_vertical"
               android:scaleType="fitCenter"
               android:src="@drawable/ic_logo"
               android:layout_width="46dp"
               android:layout_height="46dp" />
            <LinearLayout
               android:layout_marginLeft="10dp"
               android:layout_gravity="center_vertical"
               android:orientation="vertical"
               android:layout_width="match_parent"
               android:layout_height="wrap_content">
                <TextView
                   android:textStyle="bold"
                   android:textSize="16sp"
                   android:textColor="@color/colorPrimary"
                   android:text="@string/tentang_developer"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content" />
                <TextView
                   android:text="@string/tentang_email"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content" />
                <TextView
                   android:autoLink="web|all"
                   android:text="@string/tentang_blog"
                   android:layout_width="match_parent"
                   android:layout_height="wrap_content" />
            </LinearLayout>
        </LinearLayout>
        <View android:background="@color/colorAccent" android:layout_width="match_parent" android:layout_height="1.0px" android:layout_marginTop="10dp" android:layout_marginBottom="5dp" />
        <TextView android:autoLink="web|all" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="4dp" android:text="@string/tentang_deskripsi" />
    </LinearLayout>
</LinearLayout>

3. Tambahkan string berikut di strings.xml


<string name="tentang_aplikasi">Tentang Aplikasi</string>
<string name="tentang_developer">AZHAR RIVALDI</string>
<string name="tentang_email">ZZZ@gmail.com</string>
<string name="tentang_blog">http://rivaldi48.blogspot.com</string>
<string name="tentang_deskripsi">Aplikasi ini bla bla bla bla bla bla bla</string>
<string name="tentang_versi">Versi 1.0</string>

4. Buat class baru dengan nama ViewAbout.java dan masukkan kode berikut :


package id.azhar.about;
 
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.design.widget.BottomSheetDialogFragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
 
/**
 * Created by AZHAR RIVALDI on 8/12/2017.
 */
 
public class ViewAbout extends BottomSheetDialogFragment {
 
    String mString;
 
    public static ViewAbout newInstance(String string) {
        ViewAbout f = new ViewAbout();
        Bundle args = new Bundle();
        args.putString("string", string);
        f.setArguments(args);
        return f;
    }
 
    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        mString = getArguments().getString("string");
    }
 
    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View v = inflater.inflate(R.layout.content_about, container, false);
        return v;
    }
 
}

5. Jika sudah di tahap selanjutnya kita akan memanggil ViewAbout.java agar tampil di Activity. Lakukan dengan menambahkan kode berikut di Activity dimana Anda akan taruh. Sebagai contoh saya buat di MainActivity.java dan juga activity_main.xml


===== MainActivity.java =====
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        //Initialize ViewAbout
        final ViewAbout vAbout = ViewAbout.newInstance("About");
 
        Button mTombol = (Button)findViewById(R.id.tombol_tampilkan_dialog);
        mTombol.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //Perintah Menampilkan ViewAbout
                vAbout.show(getSupportFragmentManager(), vAbout.getTag());
            }
        });
    }
}
 
 
===== activity_main.xml =====
 
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout 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="match_parent"
    android:layout_height="match_parent"
    tools:context="id.delta.about.MainActivity">
 
    <Button
        android:id="@+id/tombol_tampilkan_dialog"
        android:text="Tampilkan Tentang Aplikasi"
        style="@style/Widget.AppCompat.Button.Colored"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
 
</android.support.constraint.ConstraintLayout>
6. Selesai.

Demikian informasi yang saya bagikan untuk kalian. Jangan lupa bagikan artikel ini ke teman-teman kalian agar ikut membaca Cara Membuat About App Menggunakan Bottom Sheet Dialog Fragment ini. Subscribe juga blog Rivaldi 48 ini agar kalian mendapatkan notifikasi saat Admin update artikel terbaru. Semoga kalian lebih nyaman dan mudah dalam mengakses Blog Rivaldi 48 dimanapun kalian berada. Terima Kasih. Follow Instagram Admin @azhardvls_

0 Comments

Post a Comment

Silahkan tinggalkan komentar jika Anda punya saran, kritik, atau pertanyaan seputar topik pembahasan. Gunakan bahasa yang bijak dan santun. Terima Kasih.