Cara Menciptakan About App Memakai Bottomsheetdialogfragment
Android Studio |
About App |
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 gres dengan nama ViewAbout.java dan masukkan instruksi 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 semoga tampil di Activity. Lakukan dengan menambahkan instruksi berikut di Activity dimana Anda akan taruh. Sebagai tumpuan 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 selesai 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 isu yang saya bagikan untuk kalian. Jangan lupa bagikan artikel ini ke teman-teman kalian😁 Gabung juga di Channel BBM . Ada banyak isu penting lainnya yang tidak saya publikasikan website ini.
Join di Channelnya dengan kode PIN: C004C7E92. Semoga kalian lebih nyaman dan gampang dalam mengakses Blog dimanapun kalian berada.
Terima Kasih...