Agen Terpercaya   Advertise
 
 
 
Pasang iklan, hanya lewat Contact Us.
Waspada penipuan iklan. Klik di sini untuk melihat daftar penipu.

BELAJAR [ANDROID STUDIO]

Bimabet
INTENT PADA ANDROID
Fungsi Intent
  • Untuk berpindah halaman dari satu Activity ke Activity lain. Contohnya : Kita membuat aplikasi dengan 3 Activity. Activity utama berisi tombol informasi dan login. Ketika tombol informasi di klik akan tampil activity informasi begitupun dengan tombol login ketika di klik akan menampilkan activity login.
  • Untuk transfer data dari satu Activity ke Activity lain. Contohnya : Pada saat kita mengisi data pada Activity login maka nanti akan ditampilkan informasinya pada Activity infomasi user.
  • Untuk memanggil activity pada internal android seperti Melakukan Dial Number, Open Email ataupun lainnya.
Intent pada android dibagi menjadi 2 yaitu :

1. Implicit Intent
Implicit Intent adalah intent yang digunakan untuk memanggil fungsi Activity yang sudah ada di fungsi internal android.
Seperti membuka browser, melakukan panggilan dan lainnya. Langsung saja kita praktekan menggunakan Implicit Intent pada Aplikasi Android.
a. Buat Project Baru
Buka android studio kemudian buat sebuah project baru dengan nama project belajar intent

b. activity_main.xml
Atur layoutnya dengan menambahkan 3 Button :
  • Button 1 digunakan untuk melakukan dial number
  • Button 2 digunakan untuk membuka browser
Untuk kode lengkap pada activity_main.xml yaitu sebagai berikut :
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="20dp"
    tools:context=".MainActivity">


    <Button
        android:text="TELEPON"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:id="@+id/btnpgl"
        android:onClick="panggil"
        />

    <Button
        android:text="BUKA BROWSER "
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/btnpgl"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="11dp"
        android:id="@+id/btnbuka"
        android:onClick="buka"/>

</RelativeLayout>

c. MainActivity.java
Pada MainActivity.java tambahkan intent seperti kode-kode berikut :
  • untuk melakukan panggilan
Code:
public void panggil(View view) {
    String nomor = "09667347" ;
    Intent panggil = new Intent(Intent. ACTION_DIAL);
    panggil.setData(Uri. fromParts("tel",nomor,null));
    startActivity(panggil);
}

  • untuk membuka browser
Code:
public void buka(View view) {
    String url = "https://badoystudio.com" ;
    Intent bukabrowser = new Intent(Intent. ACTION_VIEW);
    bukabrowser.setData(Uri. parse(url));
    startActivity(bukabrowser);
}

Lebih lengkapnya yaitu :
Code:
package badoystudio.com.implicit_intent;

import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;


public class MainActivity extends AppCompatActivity {

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

    public void panggil(View view) {
        String nomor = "09667347" ;
        Intent panggil = new Intent(Intent. ACTION_DIAL);
        panggil.setData(Uri. fromParts("tel",nomor,null));
        startActivity(panggil);
    }

    public void buka(View view) {
        String url = "https://badoystudio.com" ;
        Intent bukabrowser = new Intent(Intent. ACTION_VIEW);
        bukabrowser.setData(Uri. parse(url));
        startActivity(bukabrowser);
    }
}

d. AndroidManifest.xml
Karena kita akan menggunakan fasilitas call dan internet maka tambahkan user permission pada AndroidManifest.xml seperti berikut :
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="badoystudio.com.implicit_intent">

    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.INTERNET"/>

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

RUNNING :



Ketika tombol telepon ditekan akan muncul gambar dibawah ini.



Ketika tombol buka browser ditekan akan muncul gambar dibawah ini.


2. Explicit Intent
Explicit intent digunakan untuk memanggil Activity lain yang masih dalam satu project ataupun berbeda. Langsung saja kita praktekan bagaimana menggunakan Explicit Intent dengan menggunakan project belajar intent yang sudah dibuat tadi.
a. Activity_main.xml
Tambahkan satu button pada activity_main.xml dibawah button yang sudah dibuat padaimplicit intent.
Code:
<Button
    android:text="TENTANG APLIKASI"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/btnbuka"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="22dp"
    android:id="@+id/btninfo"
    android:onClick="tentang"/>


b. Buat Activity
Buat activity baru yang berisi informasi aplikasi yang kita buat.
Caranya : klik folder java > klik kanan pada nama project > pilih New > Activity > Empty Activity


Beri nama tentang pada name activity dan klik finish.

Tambahkan informasi aplikasi dengan cara Klik res > Layout > activity_tentang.xml > tab text > tambahkan kode-kode berikut :
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_tentang"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="badoystudio.com.implicit_intent.Tentang">

    <TextView
        android:text="ini adalah aplikasi belajar intent "
        android:textSize="20sp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="31dp"
        android:id="@+id/textView" />
</RelativeLayout>


c. MainActivity.java
Pada MainAcivity.java tambahkan intent untuk membuka halaman tentang yang tadi kita buat. Dengan kode berikut :
Code:
public void tentang(View view) {
    Intent tentang= new Intent(MainActivity.this, Tentang.class);
    startActivity(tentang);
}

Running App
Jalankan aplikasi maka akan tampil seperti gambar berikut :

 
Terakhir diubah:
Passing Data Antar Activity Menggunakan Intent dan Bundle di Android

Pertama-tama kita akan belajar mengirim data antar Activity menggunakan Bundle. Kodenya sebagai berikut :
Code:
Bundle bundle = new Bundle();
bundle.putString("data1", "somestring data");
bundle.putString("data2", "somestring data 2");
Intent intent = new Intent(TWOHActivityConcept3.this, TWOHActivityConcept4.class);
intent.putExtras(bundle);
startActivity(intent);

cara baca : basically Bundle itu berperan sebagai sebuah bungkusan, yang berisi data kita di dalamnya. Kita memasukkan data yang ingin kita kirim ke dalam sebuah Bundle, dan disertai key untuk menandai data yang mana pada saat pengambilan data. Kemudian baru setelah itu kita kirimkan Bundle tersebut ke Activity lain menggunakan Intent.


Cara kedua adalah mengirimkannya langsung menggunakan Intent. Pada cara kedua ini data tersebut tidak dibungkus di dalam Bundle terlebih dahulu, melainkan langsung diikutsertakan di Intent dalam bentuk extra.
Konsepnya sama, kita memasukkan data langsung ke dalam Intent dalam bentuk key value pair.


Code:
Intent intent = new Intent(TWOHActivityConcept3.this, TWOHActivityConcept4.class);
intent.putExtra("data1", "somestring data");
intent.putExtra("data2", "somestring data 2");
startActivity(intent);


Penerapan
Isikan kode berikut pada activity_main.xml :
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center_horizontal"
    android:orientation="vertical">
 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Ini halaman utama Activity 1"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
        <EditText
            android:id="@+id/et_data1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Data 1" />
 
        <EditText
            android:id="@+id/et_data2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="Data 2" />
 
    <Button
        android:id="@+id/bt_submit"
        android:text="Submit Data using Bundle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
 
    <Button
        android:id="@+id/bt_submitintent"
        android:text="Submit Data using Intent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />
</LinearLayout>

Kemudian pada activity_second.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">
 
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Ini halaman kedua Activity 2"
        android:textAppearance="?android:attr/textAppearanceLarge" />
 
    <TextView
        android:layout_margin="15dp"
        android:id="@+id/tv_data1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Data 1"
        android:textAppearance="?android:attr/textAppearanceMedium" />
 
    <TextView
        android:layout_margin="15dp"
        android:id="@+id/tv_data2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Data 2"
        android:textAppearance="?android:attr/textAppearanceMedium" />
 
</LinearLayout>

Pada file java nya, MainActivity berperan sebagai Activity pertama. Buka MainActivity.java, dan isikan kode berikut :
Code:
package id.web.twoh.twoh_android_layoutbasic;
 
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
 
/**
 * Created by Ozynx on 4/19/2019.
 */
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        final EditText etData1 = (EditText) findViewById(R.id.et_data1);
        final EditText etData2 = (EditText) findViewById(R.id.et_data2);
        Button btSubmit = (Button) findViewById(R.id.bt_submit);
        Button btSubmitIntent = (Button) findViewById(R.id.bt_submitintent);
 
        btSubmit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
 
                /**
                 * Passing data menggunakan Bundle
                 */
 
                Bundle bundle = new Bundle();
                bundle.putString("data1", etData1.getText().toString());
                bundle.putString("data2", etData2.getText().toString());
                Intent intent = new Intent(MainActivity.this, SecondActivity.class);
                intent.putExtras(bundle);
                startActivity(intent);
            }
        });
 
        btSubmitIntent.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
 
                /**
                 * Passing data via Intent
                 */
 
                Intent intent = new Intent(MainActivity.this, SecondActivity.class);
                intent.putExtra("data1", etData1.getText().toString());
                intent.putExtra("data2", etData2.getText().toString());
                startActivity(intent);
            }
        });
    }
}


Kemudian pada ActivitySecond.java, isikan kode berikut.
Code:
package id.web.twoh.twoh_android_layoutbasic;
 
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
 
/**
 * Created by Ozynx on 4/20/2019.
 */
 
public class ActivitySecond extends AppCompatActivity {
 
    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_second);
        TextView tvData1 = (TextView) findViewById(R.id.tv_data1);
        TextView tvData2 = (TextView) findViewById(R.id.tv_data2);
 
        /**
         * Kita cek apakah ada Bundle atau tidak
         */
        if(getIntent().getExtras()!=null){
            /**
             * Jika Bundle ada, ambil data dari Bundle
             */
            Bundle bundle = getIntent().getExtras();
            tvData1.setText(bundle.getString("data1"));
            tvData2.setText(bundle.getString("data2"));
        }else{
            /**
             * Apabila Bundle tidak ada, ambil dari Intent
             */
            tvData1.setText(getIntent().getStringExtra("data1"));
            tvData2.setText(getIntent().getStringExtra("data2"));
        }
    }
}

Pada ActivitySecond inilah, terdapat fungsi untuk mengambil data dari Bundle, dan dari Intent extras menggunakan key yang sudah kita define sebelumnya. Contohnya bisa langsung dilihat pada kode di atas.
Demo
 
Terakhir diubah:
Android - Fragmen
Berikut adalah daftar metode yang dapat Anda timpa di kelas fragmen
  • onAttach () Instance fragmen dikaitkan dengan instance aktivitas. Fragmen dan aktivitas tidak sepenuhnya diinisialisasi. Biasanya Anda mendapatkan dalam metode ini referensi ke aktivitas yang menggunakan fragmen untuk pekerjaan inisialisasi lebih lanjut.
  • onCreate () Sistem memanggil metode ini saat membuat fragmen. Anda harus menginisialisasi komponen-komponen penting dari fragmen yang ingin Anda pertahankan ketika fragmen dijeda atau dihentikan, kemudian dilanjutkan.
  • onCreateView () Sistem memanggil panggilan balik ini ketika saatnya bagi fragmen untuk menggambar antarmuka penggunanya untuk pertama kalinya. Untuk menggambar UI untuk fragmen Anda, Anda harus mengembalikan komponen View dari metode ini yang merupakan akar dari tata letak fragmen Anda. Anda dapat mengembalikan nol jika fragmen tidak menyediakan UI.
  • onActivityCreated () The onActivityCreated () dipanggil setelah metode onCreateView () ketika aktivitas host dibuat. Contoh aktivitas dan fragmen telah dibuat serta hierarki tampilan aktivitas. Pada titik ini, tampilan dapat diakses dengan metode findViewById (). contoh. Dalam metode ini Anda bisa instantiate objek yang memerlukan objek Konteks
  • onStart () Metode onStart () dipanggil setelah fragmen terlihat.
  • onResume () Fragmen menjadi aktif.
  • onPause () Sistem memanggil metode ini sebagai indikasi pertama bahwa pengguna meninggalkan fragmen. Ini biasanya di mana Anda harus melakukan perubahan apa pun yang harus bertahan di luar sesi pengguna saat ini.
  • onStop () Fragmen akan dihentikan dengan memanggil onStop ()
  • onDestroyView () Tampilan fragmen akan hancur setelah memanggil metode ini
BAGAIMANA CARA MENGGUNAKAN :
  • Pertama-tama tentukan berapa banyak fragmen yang ingin Anda gunakan dalam suatu kegiatan. Sebagai contoh, mari kita ingin menggunakan dua fragmen untuk menangani mode lansekap dan potret perangkat.
  • Selanjutnya berdasarkan jumlah fragmen, buat kelas yang akan memperluas kelas Fragmen . Kelas Fragmen memiliki fungsi callback yang disebutkan di atas. Anda dapat mengesampingkan salah satu fungsi berdasarkan kebutuhan Anda.
  • Sesuai dengan masing-masing fragmen, Anda harus membuat file tata letak dalam file XML. File-file ini akan memiliki tata letak untuk fragmen yang ditentukan.
  • Terakhir, modifikasi file aktivitas untuk menetapkan logika aktual penggantian fragmen berdasarkan kebutuhan Anda.





 
Terakhir diubah:
wahh suhu thanks atas semua tutornya, jika boleh berkenan, request tutorial react-native suhu, apalagi dibarengin dengan redux dan react-navigation sebagai routernya, sukses terus suhu :beer:
 
wahh suhu thanks atas semua tutornya, jika boleh berkenan, request tutorial react-native suhu, apalagi dibarengin dengan redux dan react-navigation sebagai routernya, sukses terus suhu :beer:
Reactnative basic mungkin masih sanggup saya..thank sarannya suhu...saya selesai duli yg ini...:beer:
 
Linear Layout
Ada beberapa layout yang bisa kita gunakan untuk membangun User interface (UI) yang menarik pengguna, diantaranya yaitu :
  • Linear Layout
  • Relative Layout
  • Absolute Layout
  • Frame Layout
Cara Menggunakan Linear Layout pada Android Studio
Linear Layout merupakan layout yang berfungsi untuk menampilkan komponen-komponen aplikasi contohnya : teks, tombol, gambar dan lainnya dengan cara vertikal ataupunhorizontal.
Tag LinearLayout
Pada saat kita membuat project baru menggunakan android studio defaul layout yang digunakan adalah RelativeLayout.
Maka kita harus merubahnya menggunakan Tag LinearLayout yaitu tag pembuka dari Linear Layout, juga harus dilengkap dengan layout_width dan height jika tidak maka akan terjadi error. Untuk orientationnya sendiri defaultnya horizontal.
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content">

Tag Orientation
Kita dapat mengatur orientasi untuk ditampilkan secara horisontal atau vertikal, sehingga item muncul dalam satu kolom atau satu baris. Lengkapi kode diatas dengan menambahkan tag :
Code:
android:orientation="horizontal"
sehingga menjadi :
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal">

Orientation Horizontal
Contoh pengguna tag orientation horizontal yaitu :
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="horizontal" >
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 1"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 2"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 3"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold" />

</LinearLayout>


Orientation Vertical
Contoh pengguna tag orientation vertical yaitu :
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:orientation="vertical" >

    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 1"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 2"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 3"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
</LinearLayout>


Tag Layout Gravity
Tag gravity digunakan untuk mengatur tata letak komponen yang ada pada linear layout. Contohnya :
Code:
android:layout_gravity="center "
Tag tersebut digunakan untuk mengatur tata letak komponen agar berada di tengah. Penerapannya yaitu :
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:orientation="vertical" >

    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 1"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 2"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
    <Button
        android:layout_width="100dp"
        android:layout_height="wrap_content"
        android:text="Button 3"
        android:background="@color/colorAccent"
        android:layout_margin="2dp"
        android:textColor="#fff"
        android:textStyle="bold"/>
</LinearLayout>


Tag Weight
Weight digunakan untuk memberikan bobot pada komponen layout. Contohnya sebagai berikut :
Code:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal" >
    <TextView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="teks 1"
        android:background="@color/colorAccent"
        android:layout_weight="5"/>

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="teks 2"
        android:background="@color/colorPrimary"
        android:layout_weight="5"/>

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="teks 3"
        android:background="@color/colorPrimaryDark"
        android:layout_weight="5"/>

</LinearLayout>
 
Terakhir diubah:
Relative Layout
Tag-tag pada Layout Relatif
Ada beberapa Tag xml penting yang sering digunakan pada Relatif Layout yaitu:

MenandaiKeterangan
android: layout_alignParentBottomDigunakan untuk menata letak komponen (widget) di tepi paling bawah layar.
android: layout_alignParentTopDigunakan untuk menata letak komponen (widget) di tepi paling atas layar.
android: layout_alignParentLeftDigunakan untuk menata meletakkan komponen (widget) di tepi paling kiri layar.
android: layout_alignParentRightDigunakan untuk menata meletakkan komponen (widget) di tepi paling kanan layar.
android: layout_belowDigunakan untuk memposisikan komponen (widget) di bawah komponen (widget) yang lainnya.
android: layout_aboveDigunakan untuk memposisikan komponen (widget) di atas komponen (widget) yang lainnya.
android: layout_toLeftOfDigunakan untuk memposisikan komponen (widget) di sebelah kiri komponen (widget) yang lainnya.
android: layout_toRightOfDigunakan untuk memposisikan komponen (widget) di sebelah kanan komponen (widget) yang lainnya.

Contoh penggunaan Relative Layout
Buat proyek baru lalu ketikan kode-kode berikut pada Activity_main.xml
Code:
<? xml version = "1.0" encoding = "utf-8"?>
<RelativeLayout xmlns: android = "http://schemas.android.com/apk/res/android"
    android: layout_width = "match_parent"
    android: layout_height = "match_parent"
    android: background = "# ef0000">

    <EditTeks
        android: id = "@ + id / name"
        android: layout_width = "200dp"
        android: layout_height = "wrap_content"
        android: background = "# f8eff8f3"
        android: hint = "Nama"
        android: padding = "16dp" />

    <EditTeks
        android: id = "@ + id / email"
        android: layout_width = "180dp"
        android: layout_height = "wrap_content"
        android: layout_marginLeft = "5dp"
        android: layout_toRightOf = "@ + id / name"
        android: background = "# f8eff8f3"
        android: hint = "Alamat"
        android: padding = "16dp" />

    <EditTeks
        android: id = "@ + id / subject"
        android: layout_width = "match_parent"
        android: layout_height = "wrap_content"
        android: layout_below = "@ + id / name"
        android: layout_marginTop = "16dp"
        android: background = "# f8eff8f3"
        android: hint = "Subjek"
        android: padding = "16dp" />

    <EditTeks
        android: id = "@ + id / message"
        android: layout_width = "match_parent"
        android: layout_height = "200dp"
        android: layout_below = "@ + id / subject"
        android: layout_marginTop = "16dp"
        android: background = "# f8eff8f3"
        android: gravity = "top"
        android: hint = "Pesan"
        android: padding = "16dp" />

    <Tombol
        android: id = "@ + id / kirim"
        android: layout_width = "wrap_content"
        android: layout_height = "wrap_content"
        android: layout_below = "@ + id / message"
        android: layout_centerHorizontal = "true"
        android: layout_marginTop = "16dp"
        android: padding = "16dp"
        android: text = "KIRIM" />
</RelativeLayout>

contoh lainnya
Code:
<RelativeLayout 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">
    
    <TextView
        android: id = "@ + id / lblComments"
        android: layout_width = "wrap_content"
        android: layout_height = "wrap_content"
        android: text = "Komentar"
        android: layout_alignParentTop = "true"
        android: layout_alignParentLeft = "true"
        android: textSize = "20dp"
        android: padding = "10dp" />
    <EditTeks
        android: id = "@ + id / txtComments"
        android: layout_width = "match_parent"
        android: layout_height = "170dp"
        android: textSize = "18sp"
        android: layout_alignLeft = "@ + id / lblComments"
        android: layout_below = "@ + id / lblComments"
        android: layout_centerHorizontal = "true"
        android: background = "# 3222"
        android: layout_margin = "3dp" />
    <Tombol
        android: id = "@ + id / btnSave"
        android: layout_width = "125dp"
        android: layout_height = "wrap_content"
        android: text = "Simpan"
        android: layout_below = "@ + id / txtComments"
        android: layout_alignRight = "@ + id / txtComments"
        android: background = "# f124"
        android: textColor = "# fff"
        android: layout_margin = "3dp"
        android: textStyle = "bold" />

    <Tombol
        android: id = "@ + id / button1"
        android: layout_width = "125dp"
        android: layout_height = "wrap_content"
        android: layout_alignBaseline = "@ + id / btnSave"
        android: layout_alignBottom = "@ + id / btnSave"
        android: layout_alignParentLeft = "true"
        android: text = "Hapus"
        android: background = "# ff33"
        android: textColor = "# fff"
        android: layout_margin = "3dp"
        android: textStyle = "bold" />

</RelativeLayout>
 
Terakhir diubah:
Table Layout
Contoh Penggunaan
Code:
<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:stretchColumns="1">

    <TableRow
        android:background="#22ff">
        <TextView
            android:layout_column="1"
            android:text="Open..."
            android:padding="3dip" />
        <TextView
            android:text="Ctrl-O"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>

    <TableRow android:background="#22ff">
        <TextView
            android:layout_column="1"
            android:text="Save..."
            android:padding="3dip" />
        <TextView
            android:text="Ctrl-S"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>

    <TableRow android:background="#22ff">
        <TextView
            android:layout_column="1"
            android:text="Save As..."
            android:padding="3dip" />
        <TextView
            android:text="Ctrl-Shift-S"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>

    <View
        android:layout_height="2dip"
        android:background="#FF909090" />

    <TableRow android:background="#ffff00">
        <TextView
            android:text="X"
            android:padding="3dip" />
        <TextView
            android:text="Import..."
            android:padding="3dip" />
    </TableRow>

    <TableRow android:background="#ffff00">
        <TextView
            android:text="X"
            android:padding="3dip" />
        <TextView
            android:text="Export..."
            android:padding="3dip" />
        <TextView
            android:text="Ctrl-E"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>

    <View
        android:layout_height="2dip"
        android:background="#FF909090" />

    <TableRow android:background="#aaf">
        <TextView
            android:layout_column="1"
            android:text="Quit"
            android:padding="3dip" />
    </TableRow>
</TableLayout>

contoh penggunaan table layout yang lain
Code:
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >


    <TableRow
        android:paddingTop="10px"
        android:gravity="center"
        android:layout_marginTop="20px">

        <TextView
            android:id="@+id/status"
            android:layout_width="wrap_content"
            android:layout_gravity="center"
            android:layout_span="2"
            android:text="LOGIN"
            android:textColor="#890000"
            android:textSize="25sp"
            android:textStyle="bold" />

    </TableRow>

    <TableRow
        android:layout_marginTop="20dip" >

        <TextView
            android:layout_width="wrap_content"
            android:text="Username :"
            android:textSize="20sp"
            android:textColor="#000000"
            android:layout_marginLeft="20dip"
            ></TextView>

        <EditText
            android:id="@+id/screenName"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dip"
            android:layout_marginRight="20dip"
            android:layout_weight="1" >

        </EditText>

    </TableRow>


    <TableRow
        android:layout_marginTop="20dip" >

        <TextView android:text="Password :"
            android:layout_width="wrap_content"
            android:textSize="20sp"
            android:textColor="#000000"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dip"></TextView>

        <EditText
            android:id="@+id/password"
            android:layout_height="wrap_content"
            android:layout_marginLeft="20dip"
            android:layout_marginRight="20dip"
            android:layout_weight="1" >

        </EditText>

    </TableRow>


    <TableRow
        android:gravity="center"
        android:layout_marginTop="20dip" >

        <Button
            android:text="Submit"
            android:clickable="true"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/save" android:layout_span="2" ></Button>
    </TableRow>

</TableLayout>
 
Terakhir diubah:
Frame Layout
FrameLayout adalah tata letak yang paling tepat untuk membuat beberapa UI saling menumpang tindih. Contohnya kita bisa menyisipkan widget (tombol) ke dalam widget lainya (gambar).
Contoh penggunaan
Code:
<? xml version = "1.0" encoding = "utf-8"?>
<FrameLayout xmlns: android = "http://schemas.android.com/apk/res/android"
    android: layout_width = "match_parent"
    android: layout_height = "match_parent"
    android: background = "# 1113">

   
    <ImageView
        android: layout_width = "300dp"
        android: layout_height = "300dp"
        android: layout_gravity = "center"
        android: background = "@ color / colorPrimary"
        
         />

    <Tombol
        android: layout_width = "300px"
        android: layout_height = "100px"
        android: layout_gravity = "center"
        android: text = "Tombol"
        android: background = "@ color / colorAccent"
        android: textColor = "# fff"
        android: textSize = "20sp" />
</FrameLayout>
 
Terakhir diubah:
PRAKTEK
Buat Project Simple
Aplikasi Penjualan
Deskripsi Singkat Aplikasi
Kali ini kia akan belajar membuat aplikasi penjualan sederhana menggunakan studio android. Aplikasi berbentuk terdiri dari isian yang terdiri dari:
  • Nama pelanggan
  • Nama barang
  • Jumlah beli
  • Harga
  • Uang bayar
Setelah bentuk selesai maka selanjutnya tekan tombol proses dan akan menampilkan:
  • Total belanja
  • Uang kembali
  • Bonus
  • Keterangan
Buka android studio > buat proyek baru dengan cara klik buat proyek baru > beri nama proyek "penjualan" (disesuaikan) > tentukan target sdk nya > pilih aktivitas kosong > lanjutkan sampai dengan selesai . Ukuran perangkat yang saya gunakan pada emulator adalah 5.1 "WVGA.

Buat Layout
Jika workspace studio android sudah terbuka klik activity_main.xml . Disini kita akan membuat aplikasi tata letak menggunakan widget Linearlayout dan beberapa:
  • ScrollView
  • TextView
  • Tombol
  • EditText
Untuk kode-kode xmlnya sebagai berikut:
Code:
<? xml version = "1.0" encoding = "utf-8"?>
<ScrollView 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: padding = "30dp"
    android: orientasi = "vertikal"
    alat: konteks = ". MainActivity">

    <LinearLayout
        android: layout_width = "fill_parent"
        android: layout_height = "fill_parent"
        android: orientasi = "vertikal">
        <LinearLayout
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: orientasi = "horisontal">
            <TextView
                android: layout_width = "wrap_content"
                android: layout_height = "wrap_content"
                android: text = "Nama Pembeli:"
                android: textStyle = "bold"
                android: textColor = "@ color / colorPrimary" />
            <EditTeks
                android: layout_width = "match_parent"
                android: layout_height = "wrap_content"
                android: id = "@ + id / namapelanggan"
                android: text = "" />
        </LinearLayout>

        <LinearLayout
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: orientasi = "horisontal">
            <TextView
                android: layout_width = "wrap_content"
                android: layout_height = "wrap_content"
                android: text = "Judul Ebook:"
                android: textStyle = "bold"
                android: textColor = "@ color / colorPrimary" />
            <EditTeks
                android: layout_width = "match_parent"
                android: layout_height = "wrap_content"
                android: id = "@ + id / namabarang"
                android: text = "" />
        </LinearLayout>
        <LinearLayout
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: orientasi = "horisontal">
            <TextView
                android: layout_width = "wrap_content"
                android: layout_height = "wrap_content"
                android: text = "Jumlah Beli:"
                android: textStyle = "bold"
                android: textColor = "@ color / colorPrimary" />
            <EditTeks
                android: layout_width = "match_parent"
                android: layout_height = "wrap_content"
                android: id = "@ + id / jumlahbeli"
                android: text = ""
                android: inputType = "number" />
        </LinearLayout>
        <LinearLayout
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: orientasi = "horisontal">
            <TextView
                android: layout_width = "wrap_content"
                android: layout_height = "wrap_content"
                android: text = "Harga: Rp"
                android: textStyle = "bold"
                android: textColor = "@ color / colorPrimary" />
            <EditTeks
                android: layout_width = "match_parent"
                android: layout_height = "wrap_content"
                android: id = "@ + id / harga"
                android: text = ""
                android: inputType = "number"
                android: layout_marginBottom = "8dp" />
        </LinearLayout>
        <LinearLayout
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: orientasi = "horisontal">
            <TextView
                android: layout_width = "wrap_content"
                android: layout_height = "wrap_content"
                android: text = "Uang Bayar: Rp"
                android: textStyle = "bold"
                android: textColor = "@ color / colorPrimary" />
            <EditTeks
                android: layout_width = "match_parent"
                android: layout_height = "wrap_content"
                android: id = "@ + id / uangbayar"
                android: text = ""
                android: inputType = "number" />
        </LinearLayout>
        <Tombol
            android: layout_marginTop = "30dp"
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: id = "@ + id / tombol1"
            android: text = "PROSES"
            android: background = "@ color / colorAccent"
            android: textStyle = "bold"
            android: textColor = "# ffffff"
            android: layout_marginBottom = "8dp" />
        <TextView
            android: layout_marginTop = "20dp"
            android: layout_width = "wrap_content"
            android: layout_height = "wrap_content"
            android: text = "Total Belanja"
            android: textColor = "@ color / colorPrimary"
            android: id = "@ + id / totalbelanja"
            android: textStyle = "bold"
            android: textSize = "18dp"
            android: layout_marginBottom = "8dp" />
        <TextView
            android: layout_width = "wrap_content"
            android: layout_height = "wrap_content"
            android: text = "Uang Kembali"
            android: textColor = "@ color / colorPrimary"
            android: id = "@ + id / uangkembali"
            android: textStyle = "bold"
            android: textSize = "18dp"
            android: layout_marginBottom = "8dp" />
        <TextView
            android: layout_width = "wrap_content"
            android: layout_height = "wrap_content"
            android: text = "Bonus"
            android: textColor = "@ color / colorPrimary"
            android: id = "@ + id / bonus"
            android: textStyle = "bold"
            android: textSize = "18dp"
            android: layout_marginBottom = "8dp" />
        <TextView
            android: layout_width = "wrap_content"
            android: layout_height = "wrap_content"
            android: text = "Keterangan"
            android: textColor = "@ color / colorPrimary"
            android: id = "@ + id / Keterangan"
            android: textStyle = "bold"
            android: textSize = "18dp"
            android: layout_marginBottom = "8dp" />
        <LinearLayout
            android: layout_marginTop = "20dp"
            android: layout_width = "match_parent"
            android: layout_height = "wrap_content"
            android: gravity = "center"
            android: orientasi = "horisontal">
            <Tombol
                android: layout_width = "200dp"
                android: layout_height = "wrap_content"
                android: id = "@ + id / tombol2"
                android: text = "RESET DATA"
                android: background = "@ color / colorAccent"
                android: textStyle = "bold"
                android: textColor = "# ffffFF" />
            <Tombol
                android: layout_width = "200dp"
                android: layout_marginLeft = "20dp"
                android: layout_height = "wrap_content"
                android: id = "@ + id / tombol3"
                android: text = "KELUAR"
                android: background = "@ color / colorAccent"
                android: textColor = "# FFFFFF"
                android: textStyle = "bold" />
        </LinearLayout>
    </LinearLayout>
</ScrollView>

Jika tidak ada kesalahan maka tata letak akan menampilkan seperti gambar di bawah ini:




Berikan kodingan java
Selanjutnya memberikan perintah pada textview, tombol, dan komponen lain menggunakan bahasa pemrograman java pada MainActivity.java. Untuk kode-kode lengkapnya seperti dibawah ini, buat diletakan di bawah paket nama (contoh paket badoystudio.com.penjualan; / sesuaikan dengan nama paket projectmu).
Code:
paket Ozynx.com.penjualan;

        impor android.support.v7.app.AppCompatActivity;
        impor android.os.Bundle;
        impor android.view.View;
        impor android.widget.Button;
        impor android.widget.EditText;
        impor android.widget.TextView;
        impor android.widget.Toast;

MainActivity kelas publik memperluas AppCompatActivity {
    EditText pribadi edtnamapel, edtnamabar, edtjumlahbel, edtharga, edtuangbay;
    btn Tombol pribadi;
    Tombol pribadi btnhapus;
    Tombol pribadi btnexit;
    txtnamapel TextView pribadi;
    txtnamabar TextView pribadi;
    txtjumlahbel TextView pribadi;
    txtharga pribadi TextView;
    txtuangbay TextView pribadi;
    txtbonus TextView pribadi;
    TextView pribadi txttotalbelanja;
    private TextView txtuangkembali;
    txtketerangan TextView pribadi;

    @Mengesampingkan
    void onCreate yang dilindungi (Bundle disimpanInstanceState) {
        super.onCreate (SavedInstanceState);
        setContentView (R.layout.activity_main);

        getSupportActionBar (). setTitle ("Badoy Shop");

        edtnamapel = (EditText) findViewById (R.id.namapelanggan);
        edtnamabar = (EditText) findViewById (R.id.namabarang);
        edtjumlahbel = (EditText) findViewById (R.id.jumlahbeli);
        edtharga = (EditText) findViewById (R.id.harga);
        edtuangbay = (EditText) findViewById (R.id.uangbayar);
        btnproses = (Tombol) findViewById (R.id.tombol1);
        btnhapus = (Tombol) findViewById (R.id.tombol2);
        btnexit = (Tombol) findViewById (R.id.tombol3);
        txtnamapel = (TextView) findViewById (R.id.namapelanggan);
        txtnamabar = (TextView) findViewById (R.id.namabarang);
        txtjumlahbel = (TextView) findViewById (R.id.jumlahbeli);
        txtharga = (TextView) findViewById (R.id.harga);
        txtuangbay = (TextView) findViewById (R.id.uangbayar);
        txtbonus = (TextView) findViewById (R.id.bonus);
        txttotalbelanja = (TextView) findViewById (R.id.totalbelanja);
        txtuangkembali = (TextView) findViewById (R.id.uangkembali);
        txtketerangan = (TextView) findViewById (R.id.keterangan);
        
        // berikan tindakan pada tombol proses

        btnproses.setOnClickListener (View baru.OnClickListener () {
            @Mengesampingkan
            public void onClick (Tampilan tampilan) {
                String namapelanggan = edtnamapel.getText (). ToString (). Trim ();
                String namabarang = edtnamabar.getText (). ToString (). Trim ();
                String jumlahbeli = edtjumlahbel.getText (). ToString (). Trim ();
                String harga = edtharga.getText (). ToString (). Trim ();
                String uangbayar = edtuangbay.getText (). ToString (). Trim ();

                double jb = Double.parseDouble (jumlahbeli);
                double h = Double.parseDouble (harga);
                double ub = Double.parseDouble (uangbayar);
                total ganda = (jb * h);
                txttotalbelanja.setText ("Total Belanja:" + total);
                
                // berikan jika dan lain untuk bonus ketentuan 

                if (total> = 200000) {
                    txtbonus.setText ("Bonus: Mouse");
                } lain jika (total> = 50000) {
                    txtbonus.setText ("Bonus: Keyboard");
                } lain jika (total> = 40000) {
                    txtbonus.setText ("Bonus: Harddisk");
                } lain {
                    txtbonus.setText ("Bonus: Tidak Ada Bonus");
                }
                gandakan uangkembalian = (ub - total);

                if (ub <total) {
                    txtketerangan.setText ("Keterangan: uang bayar kurang Rp" + (-uangkembalian));
                    txtuangkembali.setText ("Uang Kembali: Rp 0");
                }lain{
                    txtketerangan.setText ("Keterangan: Tunggu Kembalian");
                    txtuangkembali.setText ("Uang Kembali:" + uangkembalian);
                }


                // berikan tindakan pada tombol reset data 
            }
        });
        btnhapus.setOnClickListener (View baru.OnClickListener () {
            @Mengesampingkan
            public void onClick (Tampilan tampilan) {
                txtnamapel.setText ("");
                txtnamabar.setText ("");
                txttotalbelanja.setText ("Total Belanja: Rp 0");
                txtharga.setText ("");
                txtuangbay.setText ("");
                txtuangkembali.setText ("Uang Kembali: Rp 0");
                txtbonus.setText ("Bonus: -");
                txtjumlahbel.setText ("");
                txtketerangan.setText ("Keterangan: -");

                Toast.makeText (getApplicationContext (), "Data sudah direset", Toast.LENGTH_LONG) .show ();

                // berikan aksi pada tombol keluar
            }
        });
        btnexit.setOnClickListener (View baru.OnClickListener () {
            public void onClick (Tampilan tampilan) {

                moveTaskToBack (true);
            }
        });
    }
}

Penjelasan kode jika dan lain untuk pelengkap bonus:
  • Jika belanja lebih dari atau sama dengan 200.000 diberikan bonus Mouse
  • Jika belanja lebih dari atau sama dengan 50.000 diberikan bonus Keyboard
  • Jika belanja lebih dari atau sama dengan 40.000 diberikan bonus Harddisk
Silahkan di buat untuk metode promo yang sesuai untuk produknya dan di kembangkan sendiri .
Saya hanya mendasari saja,...
Semoga bermanfaat.
:beer:


______________________________
LANJUT TUTORIAL YA !
 
LANJUT BELAJAR KE TAHAP SQLITE :

SQLite yaitu sistem manajemen database relasional yang dibangun menggunakan library bahasa pemrograman C. Bedanya SQLite ini bukan mesin database untuk client-server, tapi digunakan untuk file tunggal atau beberapa file saja.
 
Fungsi SQLite Open Helper
 
Insert Data, Update Data, dan Delete Data pada Aplikasi Android
Menambahkan Fungsi Delete Data pada Data Access Object



Code:
package co.twoh.roomtutorial.data;

import android.arch.persistence.room.Dao;
import android.arch.persistence.room.Delete;
import android.arch.persistence.room.Insert;
import android.arch.persistence.room.OnConflictStrategy;
import android.arch.persistence.room.Query;
import android.arch.persistence.room.Update;

import co.twoh.roomtutorial.model.Barang;

/**
* Created by Ozynx
*/

@Dao
public interface BarangDAO {

    @Insert(onConflict = OnConflictStrategy.REPLACE)
    long insertBarang(Barang barang);

    @Update
    int updateBarang(Barang barang);

    @Delete
    int deleteBarang(Barang barang);

    @Query("SELECT * FROM tbarang")
    Barang[] selectAllBarangs();

}

Memanggil Fungsi Delete Data

Initiate AppDatabase :

[code]
private AppDatabase db;
 
db = Room.databaseBuilder(getApplicationContext(),
            AppDatabase.class, "barangdb").build();
Melakukan pemanggilan onDeleteBarang() dengan posisi barang sebagai parameter. Menggunakan parameter posisi itu kita akan mengambil data barang yang ingin dihapus :
Code:
private void onDeteleBarang(int position){
        db.barangDAO().deleteBarang(daftarBarang.get(position));
        daftarBarang.remove(position);
        notifyItemRemoved(position);
        notifyItemRangeRemoved(position, daftarBarang.size());
    }

 
Terakhir diubah:
android shared preferences
Untuk menggunakan preferensi bersama, Anda harus memanggil metode getSharedPreferences () yang mengembalikan instance SharedPreference yang menunjuk ke file yang berisi nilai preferensi.
Code:
SharedPreferences sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
Parameter pertama adalah kunci dan parameter kedua adalah MODE. Selain pribadi ada mode lain yang tersedia yang tercantum di bawah ini -

Sr. TidakMode & deskripsi
1MODE_APPEND
Ini akan menambahkan preferensi baru dengan preferensi yang sudah ada
2MODE_ENABLE_WRITE_AHEAD_LOGGING
Basis data bendera terbuka. Ketika diatur, itu akan memungkinkan menulis di depan logging secara default
3MODE_MULTI_PROCESS
Metode ini akan memeriksa modifikasi preferensi bahkan jika instance preferensi bersama telah dimuat
4MODE_PRIVATE
Dengan mengatur mode ini, file hanya dapat diakses menggunakan aplikasi panggilan
5MODE_WORLD_READABLE
Mode ini memungkinkan aplikasi lain membaca preferensi
6MODE_WORLD_WRITEABLE
Mode ini memungkinkan aplikasi lain untuk menulis preferensi
Anda dapat menyimpan sesuatu di preferensi yang dibagikan dengan menggunakan kelas SharedPreferences.Editor. Anda akan memanggil metode edit instance SharedPreference dan akan menerimanya dalam objek editor. Sintaksnya adalah -

Code:
Editor editor = sharedpreferences.edit();
editor.putString("key", "value");
editor.commit();

Terlepas dari metode putString, ada metode yang tersedia di kelas editor yang memungkinkan manipulasi data di dalam preferensi bersama. Mereka terdaftar sebagai berikut -

Sr. NOMode & deskripsi
1menerapkan()
Ini adalah metode abstrak. Ini akan melakukan perubahan Anda kembali dari editor ke objek SharedPreference yang Anda panggil
2bersih()
Ini akan menghapus semua nilai dari editor
3hapus (kunci String)
Ini akan menghapus nilai yang kuncinya telah dilewati sebagai parameter
4putLong (Kunci tali, nilai panjang)
Ini akan menyimpan nilai panjang dalam editor preferensi
5putInt (Kunci string, nilai int)
Ini akan menyimpan nilai integer dalam editor preferensi
6putFloat (Kunci string, nilai float)
Ini akan menyimpan nilai float di editor preferensi
Contoh
Contoh ini menunjukkan penggunaan Preferensi Bersama. Ini menampilkan layar dengan beberapa bidang teks, yang nilainya disimpan ketika aplikasi ditutup dan dibawa kembali ketika dibuka lagi.

Untuk bereksperimen dengan contoh ini, Anda harus menjalankan ini di perangkat yang sebenarnya aktif setelah mengembangkan aplikasi sesuai dengan langkah-langkah di bawah ini -

TanggaDeskripsi
1Anda akan menggunakan studio Android untuk membuat aplikasi Android di bawah paket com.example.sairamkrishna.myaplikasi.
2Ubah file src / MainActivity.java untuk menambahkan kode progres untuk menampilkan dialog progres pemintalan.
3Ubah file res / layout / activity_main.xml untuk menambahkan masing-masing kode XML.
4Jalankan aplikasi dan pilih perangkat android yang berjalan dan instal aplikasi di dalamnya dan verifikasi hasilnya.
Berikut ini adalah konten dari MainActivity.java yang dimodifikasi .

Code:
package com.example.sairamkrishna.myapplication;

import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends AppCompatActivity {
   EditText ed1,ed2,ed3;
   Button b1;
   
   public static final String MyPREFERENCES = "MyPrefs" ;
   public static final String Name = "nameKey";
   public static final String Phone = "phoneKey";
   public static final String Email = "emailKey";
   
   SharedPreferences sharedpreferences;

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

      ed1=(EditText)findViewById(R.id.editText);
      ed2=(EditText)findViewById(R.id.editText2);
      ed3=(EditText)findViewById(R.id.editText3);

      b1=(Button)findViewById(R.id.button);
      sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);

      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            String n  = ed1.getText().toString();
            String ph  = ed2.getText().toString();
            String e  = ed3.getText().toString();

            SharedPreferences.Editor editor = sharedpreferences.edit();

            editor.putString(Name, n);
            editor.putString(Phone, ph);
            editor.putString(Email, e);
            editor.commit();
            Toast.makeText(MainActivity.this,"Thanks",Toast.LENGTH_LONG).show();
         }
      });
   }

}
Berikut ini adalah isi dari file kegiatan utama yang diubah res / tata letak / activiy_main.xml.
Code:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
   
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Shared Preference "
      android:id="@+id/textView"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:textSize="35dp" />
     
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials Point"
      android:id="@+id/textView2"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true"
      android:textSize="35dp"
      android:textColor="#ff16ff01" />
     
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText"
      android:layout_below="@+id/textView2"
      android:layout_marginTop="67dp"
      android:hint="Name"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"
      android:layout_alignParentLeft="true"
      android:layout_alignParentStart="true" />
     
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText2"
      android:layout_below="@+id/editText"
      android:layout_alignParentLeft="true"
      android:layout_alignParentStart="true"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"
      android:hint="Pass" />
     
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText3"
      android:layout_below="@+id/editText2"
      android:layout_alignParentLeft="true"
      android:layout_alignParentStart="true"
      android:layout_alignParentRight="true"
      android:layout_alignParentEnd="true"
      android:hint="Email" />
     
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Save"
      android:id="@+id/button"
      android:layout_below="@+id/editText3"
      android:layout_centerHorizontal="true"
      android:layout_marginTop="50dp" />
     
</RelativeLayout>
Berikut ini adalah konten konten yang diubah dari res / values / strings.xml.
Code:
<resources>
   <string name="app_name">My Application</string>
</resources>

Berikut ini adalah file default konten AndroidManifest.xml.
Code:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >
   
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
     
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
     
   </application>
</manifest>
 
Terakhir diubah:
Membuat Aplikasi Desain Material
Mari kita mulai dengan membuat aktivitas untuk layar beranda: klik kanan pada nama paket Anda dan pilih New> Activity> Blank Activity . Anda akan melihat layar berikut:

Seperti yang Anda lihat, templat aktivitas ini sudah memiliki tombol aksi mengambang di dalamnya. Ubah judul aktivitas menjadi daftar belanja dan pilih bidang Kegiatan Peluncur untuk memberi tahu Android Studio bahwa ini akan menjadi layar beranda. Tekan Selesai untuk menghasilkan aktivitas. Android Studio mencoba mengikuti panduan desain material dengan cermat.

Jika Anda membuka activity_main.xml, Anda akan melihat kode untuk tombol tindakan mengambang. Ubah nilai properti sumber menjadi @drawable/ic_add_24dpkarena kami ingin tombol ini menampilkan simbol plus. Ubah properti tint untuk ditambahkan @android:color/whiteuntuk mengubah warna simbol plus menjadi putih.

Tambah dan Edit Layar Barang
Tombol aksi mengambang sekarang siap. Sekarang mari kita beralih ke membuat aktivitas untuk menambah dan mengedit layar item. Klik kanan pada nama paket lagi dan pilih New> Activity> Empty Activity .

Saya akan memanggil ini ItemActivitydan tekan Selesai . Layout ini akan memiliki dua widget input teks, satu di bawah yang lain. Oleh karena itu, lebih mudah untuk menggunakan tata letak linier daripada tata letak relatif. Atur orientasinya menjadi vertikal.

Di dalam tata letak, buat tag untuk tata letak input teks. Atur lebar match_parentdan setel ke wrap_content. Di dalam tag, tambahkan tag edit teks dan atur lebar match_parentdan tingginya wrap_content. Sebut saja input_item_name. Selanjutnya, atur atribut petunjuknya ke Item name. Nilai yang Anda tentukan untuk petunjuk akan diberikan sebagai label mengambang beranimasi.

Sekarang kita harus mengulangi langkah yang sama untuk widget input kedua. Jadi, Anda cukup menyalin dan menempelkan semua kode ini. Ubah id menjadi input_item_quantitydan ubah petunjuk ke Quantity.

Tambahkan Tombol Simpan
Tata letak kegiatan hampir selesai. Yang hilang adalah tombol simpan. Untuk menambahkan tombol di dalam bilah tindakan, kita perlu menambahkannya sebagai item menu.

Klik kanan pada folder Resources dan pilih file sumber daya Android Baru . Ubah jenis Sumber Daya ke Menu dan beri nama file menu_item_activity. Tambahkan namespace aplikasi ke elemen root dengan hanya mengetik appNsdan menekan Enter .

Selanjutnya, buat tag item baru untuk mewakili tombol simpan. Tetapkan id ke save_actiondan setel judul menjadi Save. Dan sekarang tambahkan atribut yang disebut app:showAsAction, dan atur nilainya menjadi always. Atribut ini penting karena jika Anda lupa menambahkannya, tombol simpan akan berakhir di dalam menu limpahan bilah tindakan.

Kita sekarang harus mengembang file menu di dalam ItemActivity. Untuk melakukannya, buka ItemActivity.java dan ganti metode menu opsi onCreate.

Selanjutnya, timpa metode onOptionsItemSelected sehingga kami diberitahu ketika pengguna menekan tombol. Di dalamnya, tambahkan pernyataan jika dan gunakan getItemIduntuk memeriksa apakah id dari opsi yang dipilih cocok dengan id dari tombol simpan, yaitu R.id.save_action.


Kode untuk Membuka ItemActivity
Sekarang mari kita menulis kode untuk membuka ItemActivity ketika pengguna menekan tombol tindakan mengambang. Jadi buka MainActivity.java. Tombol tindakan mengambang sudah memilikionClickpendengar acara yang terpasang padanya. Ini berisi beberapa kode placeholder yang dapat Anda hapus. Kami sekarang akan menggunakan Intent untuk meluncurkan ItemActivity.

Inisialisasi Intent menggunakan MainActivitysebagai konteks dan ItemActivitysebagai kelas. Ketika ItemActivitydibuka dengan cara ini, TITLEseharusnya Add item. Kita dapat menggunakan ekstra untuk tujuan ini. Dan akhirnya telepon startActivityuntuk benar-benar diluncurkan ItemActivity.

Buka ItemActivity.java sekarang karena kita perlu menggunakan ekstra yang kami kirim. Jadi tambahkan kondisi di sini untuk memeriksa apakah nilai kembali dari getIntentmetode memiliki tambahan yang disebut TITLE. Jika kondisinya benar, gunakan setTitleuntuk mengubah judul. Perhatikan bahwa Anda harus menggunakan getStringExtrametode ini untuk mengambil nilai ekstra.

Tambahkan Ikon "Kembali"
Mari kita tambahkan ikon "kembali" ini ke aktivitas kita.



Untuk melakukannya, buka AndroidManifest.xml. Di sini, di dalam tag untuk ItemActivity, tambahkan parentActivityNameatribut dan atur nilainya MainActivity.

Jalankan Aplikasi
Kita sekarang dapat menjalankan aplikasi untuk melihat apa yang baru saja kita buat.


Layar beranda kami sekarang memiliki tombol aksi mengambang. Jika Anda mengkliknya, Anda akan dibawa ke ItemActivity.

Dan jika Anda mencoba mengetikkan sesuatu ke widget input, Anda harus dapat melihat label apung mereka.



Kesimpulan
agan sekarang tahu cara membuat antarmuka pengguna yang memiliki tombol aksi mengambang dan tata letak input teks.
 
Terakhir diubah:
17 Desain Aplikasi Keren
 
Pemrograman Java DASAR
 
User di-banned, maka konten otomatis dihapus.
User is banned, content is deleted automatically.
 
Jav Toys
Gaple Online Indonesia
Pasang iklan hanya lewat CONTACT US
Back
Top
We are now part of LS Media Ltd