Minggu, 07 April 2019

UAS Mobile Programing

DAWUD AL FAUZI
NIM 161011401110
STMIK ERESHA


UAS MOBILE PROGRAMING

Bismillahirrohmanirrohiim


Kita mulai dari melakukan navigasi ke res/layout, dan buatlah sebuat layout resource file baru dengan file nameactivity_listview dan Root LinearLayout, lantas klik OK. Setelah itu seperti biasa pindahlah ke Text Tab dan masukan kode berikut :
<?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">
<ListView
    android:id="@+id/list1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"></ListView>
</LinearLayout>

Kita definisikan ListView baru dengan id list1. Sekarang pindah ke MainActivity  dan kita buat Activity menjadi seperti berikut :
package com.example.uasdawudalfauzi.161011401110;
import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import java.util.ArrayList;

public class MainActivity extends ActionBarActivity {

    //tambahkan global variable
    ArrayList<String> mArrayList;
    ArrayAdapter<String> mAdapter;
    ListView mListView;

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

        //1.inisiasi listview
        mListView = (ListView) findViewById(R.id.list1);

        //2.inisiasi ArrayList sebagai wadah dari List kita
        mArrayList = new ArrayList<String>();

        //3.Inisiasi Adapter
        mAdapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,mArrayList);
        
        //4.Set Adapter
        mListView.setAdapter(mAdapter);
        
        //5.Coba isi data
        mArrayList.add("Apple");
        mArrayList.add("Windows");
        mArrayList.add("Linux");
        mArrayList.add("Android");
        mArrayList.add("iOS");
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
    
}


Berikut adalah hasil Run nya:


Langkah selanjutnya adalah membuat supaya ListView kita dapat kita klik untuk membuka Activity baru.













TambahkanmListView.setOnItemClickListener(this); pada metode onCreate pada MainActivity anda. Kata-katathis akan mengalami error seperti pada tutorial sebelumnya. Double klik pada this dan pilih menu "MainActivity' implement 'android.widget.AdapaterView.OnItemClickListener'. Lantas klik OK pada pop up. Fungsi onItemClickakan dibuat secara otomatis.
Selanjutnya isi kode berikut ke dalam fungsi onItemClick yang dibuat secara otomatis :

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        Intent intent = new Intent(this,SecondActivity.class);
        String txt = (String) mArrayList.get(position);
        intent.putExtra("name", txt);
        startActivity(intent);
    }

Nah sekarang Item dari List akan dapat di klik untuk berpindah ke SecondActivity. Perhatikan kodeintent.putExtra("name",txt); . Kode ini dipergunakan untuk mengirimkan data yang bisa dipergunakan pada Activity penerima, disini adalah SecondActivity.  
Sekarang kita akan buat supaya SecondActivity dapat menampilkan data yang dikirim oleh MainActivity. Masukkan kode berikut ke SecondActivity Anda :

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.secondactivity_layout);
    text2 = (TextView) findViewById(R.id.text2);
    // dari tutorial sebelumnya
    //text2.setText("Ini Second Activity");

    //ambil putExtra
    String name = this.getIntent().getExtras().getString("name");
    text2.setText(name);
}

Yang terjadi disini adalah, kita mengambil data yang dikirim menggunakan metode getExtras dan memasukan data tersebut ke dalam variabel name, yang akhirnya kita print menggunakan setText
Sekarang mari kita run App kita. 

Jika kita klik "Apple" akan membuka SecondActivity dengan isi "apple" pula. 

Mohon Maaf sekian dari saya, dan ke depannya Insya Allah akan saya terus asah kemampuan saya

Tidak ada komentar:

Posting Komentar