Membuat Aplikasi Android Sederhana Menggunakan Button, TextView, ImageView dan Animation

Posted on Updated on

  1. Buat splash_screen.xml untuk tampilan awal aplikasi seperti dibawah ini:

<?xml version=“1.0” encoding=“utf-8”?>

<RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android&#8221;

android:layout_width=“match_parent”

android:layout_height=“match_parent”

android:background=“#0844d5” >

<ImageView

android:id=“@+id/logoId”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_alignParentBottom=“true”

android:layout_alignParentLeft=“true”

android:layout_marginBottom=“5dp”

android:layout_marginLeft=“10dp”

android:src=“@raw/logoid” />

<ImageView

android:id=“@+id/logoSt”

android:layout_width=“170dp”

android:layout_height=“170dp”

android:layout_centerHorizontal=“true”

android:layout_centerVertical=“true”

android:src=“@raw/logo” />

</RelativeLayout>

  1. Buat SplashScreen.java seperti dibawah ini:

import android.support.v7.app.ActionBarActivity;

import android.content.Intent;

import android.os.Bundle;

import android.os.Handler;

import android.view.Menu;

import android.view.MenuItem;

import android.view.Window;

import android.view.animation.Animation;

import android.view.animation.AnimationUtils;

import android.widget.ImageView;

public class SplashScreen extends ActionBarActivity {

private Animation anim1, anim2;

private ImageView logoSt, logoId;

private Handler handlerTimer = new Handler();

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.splash_screen);

anim1 = AnimationUtils.loadAnimation(this, R.anim.logo);

anim2 = AnimationUtils.loadAnimation(this, R.anim.logo);

Thread splash = new Thread() {

public void run() {

logoSt = (ImageView) findViewById(R.id.logoSt);

logoSt.setImageResource(R.drawable.ic_launcher);

logoSt.startAnimation(anim1);

handlerTimer.postDelayed(new Runnable() {

@Override

public void run() {

logoId = (ImageView) findViewById(R.id.logoId);

logoId.setImageResource(R.raw.logoid);

logoId.startAnimation(anim2);

}

}, 500);

try {

sleep(2000);

} catch (InterruptedException e) {

e.printStackTrace();

}

Intent menu = new Intent(“com.interactivedeveloper.simpletext.MAIN”);

startActivity(menu);

finish();

}

};

splash.start();

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.splash_screen, menu);

return true;

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId();

if (id == R.id.action_settings) {

return true;

}

return super.onOptionsItemSelected(item);

}

}

 

  1. Buat tampilan main.xml seperti dibawah ini:

<?xml version=“1.0” encoding=“utf-8”?>

<RelativeLayout xmlns:android=http://schemas.android.com/apk/res/android&#8221;

android:layout_width=“match_parent”

android:layout_height=“match_parent” >

<RelativeLayout

android:id=“@+id/relativeLayout1”

android:layout_width=“fill_parent”

android:layout_height=“wrap_content”

android:layout_below=“@+id/hijau”

android:layout_centerHorizontal=“true”

        android:gravity=“center” >

<ImageView

android:id=“@+id/show”

android:layout_width=“100dp”

android:layout_height=“30dp”

android:src=“@raw/show” />

<ImageView

android:id=“@+id/clear”

android:layout_width=“100dp”

android:layout_height=“30dp”

android:layout_toRightOf=“@+id/show”

android:src=“@raw/clear” />

</RelativeLayout>

<ImageView

android:id=“@+id/ungu”

android:layout_width=“50dp”

android:layout_height=“50dp”

android:layout_alignTop=“@+id/hijau”

android:layout_toLeftOf=“@+id/merah”

android:src=“@raw/ungu” />

<ImageView

android:id=“@+id/merah”

android:layout_width=“50dp”

android:layout_height=“50dp”

android:layout_alignTop=“@+id/hijau”

android:layout_marginLeft=“5dp”

android:layout_toLeftOf=“@+id/hijau”

android:src=“@raw/merah” />

<ImageView

android:id=“@+id/biru”

android:layout_width=“50dp”

android:layout_height=“50dp”

android:layout_alignTop=“@+id/hijau”

android:layout_marginRight=“5dp”

android:layout_toRightOf=“@+id/hijau”

android:src=“@raw/biru” />

<ImageView

android:id=“@+id/kuning”

android:layout_width=“50dp”

android:layout_height=“50dp”

android:layout_alignTop=“@+id/hijau”

android:layout_toRightOf=“@+id/biru”

android:src=“@raw/kuning” />

<ImageView

android:id=“@+id/hijau”

android:layout_width=“50dp”

android:layout_height=“50dp”

android:layout_centerHorizontal=“true”

android:layout_centerVertical=“true”

android:layout_margin=“5dp”

android:src=“@raw/hijau” />

<TextView

android:id=“@+id/text”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_above=“@+id/hijau”

android:layout_centerHorizontal=“true”

android:layout_margin=“10dp”

android:gravity=“center”

android:textSize=“18sp” />

<TextView

android:id=“@+id/hint”

android:layout_width=“wrap_content”

android:layout_height=“wrap_content”

android:layout_alignParentBottom=“true”

android:layout_centerHorizontal=“true”

android:layout_margin=“2dp”

android:gravity=“center”

android:text=“Tekan tomboh Show! untuk memasukkan text” />

</RelativeLayout>

  1. Buat Main.java seperti dibawah ini:

import android.app.AlertDialog;

import android.content.DialogInterface;

import android.graphics.Color;

import android.os.Bundle;

import android.support.v7.app.ActionBarActivity;

import android.view.Menu;

import android.view.MenuItem;

import android.view.View;

import android.widget.EditText;

import android.widget.ImageView;

import android.widget.TextView;

import android.widget.Toast;

public class Main extends ActionBarActivity {

private TextView text;

private EditText tinput;

private ImageView ungu, merah, hijau, biru, kuning, show, clear;

private boolean flag = false;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

init();

show.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

AlertDialog.Builder alert = new AlertDialog.Builder(Main.this);

alert.setTitle(“Input”);

alert.setMessage(“Masukkan text!”);

tinput = new EditText(Main.this);

alert.setView(tinput);

alert.setPositiveButton(“OK”, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

text.setText(tinput.getText());

Toast.makeText(Main.this, “Text ditambahkan!”, Toast.LENGTH_LONG).show();

flag = true;

}

});

alert.setNegativeButton(“CANCEL”, new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog,int which) {

}

});

alert.show();

}

});

clear.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

text.setText(“”);

flag = false;

}

});

ungu.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

if (flag) {

text.setTextColor(Color.parseColor(“#d62395”));

} else {

Toast.makeText(Main.this, “Masukkan text terlebih dahulu!”, Toast.LENGTH_LONG).show();

}

}

});

merah.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

if (flag) {

text.setTextColor(Color.parseColor(“#d62323”));

} else {

Toast.makeText(Main.this, “Masukkan text terlebih dahulu!”, Toast.LENGTH_LONG).show();

}

}

});

hijau.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

if (flag) {

text.setTextColor(Color.parseColor(“#23d62c”));

} else {

Toast.makeText(Main.this, “Masukkan text terlebih dahulu!”, Toast.LENGTH_LONG).show();

}

}

});

biru.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

if (flag) {

text.setTextColor(Color.parseColor(“#2338d6”));

} else {

Toast.makeText(Main.this, “Masukkan text terlebih dahulu!”, Toast.LENGTH_LONG).show();

}

}

});

kuning.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

if (flag) {

text.setTextColor(Color.parseColor(“#faf826”));

} else {

Toast.makeText(Main.this, “Masukkan text terlebih dahulu!”, Toast.LENGTH_LONG).show();

}

}

});

}

private void init() {

text = (TextView) findViewById(R.id.text);

ungu = (ImageView) findViewById(R.id.ungu);

merah = (ImageView) findViewById(R.id.merah);

hijau = (ImageView) findViewById(R.id.hijau);

biru = (ImageView) findViewById(R.id.biru);

kuning = (ImageView) findViewById(R.id.kuning);

show = (ImageView) findViewById(R.id.show);

clear = (ImageView) findViewById(R.id.clear);

}

@Override

public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.splash_screen, menu);

return true;

}

@Override

public boolean onOptionsItemSelected(MenuItem item) {

int id = item.getItemId();

if (id == R.id.action_settings) {

return true;

}

return super.onOptionsItemSelected(item);

}

}

 

  1. Berikut adalah isi file animasi logo.xml

<?xml version=“1.0” encoding=“utf-8”?>

<set xmlns:android=http://schemas.android.com/apk/res/android&#8221;

android:shareInterpolator=“false”

android:ordering=“together” >

<scale

android:fromXScale=“0.5”

android:toXScale=“1.0”

android:fromYScale=“0.5”

android:toYScale=“1.0”

android:pivotX=“50%”

android:pivotY=“50%”

android:fillAfter=“false”

android:duration=“1000”

android:interpolator=“@android:anim/decelerate_interpolator” />

<alpha

android:fromAlpha=“0.7”

android:toAlpha=“1.0”

android:duration=“1000”

android:interpolator=“@android:anim/decelerate_interpolator” />

</set>

 

  1. Berikut adalah isi file AndroidManifest.xml:

<?xml version=“1.0” encoding=“utf-8”?>

<manifest xmlns:android=http://schemas.android.com/apk/res/android&#8221;

package=“com.interactivedeveloper.simpletext”

android:versionCode=“1”

android:versionName=“1.0” >

<uses-sdk

android:minSdkVersion=“8”

android:targetSdkVersion=“19” />

<application

android:allowBackup=“true”

android:icon=“@drawable/ic_launcher”

android:label=“@string/app_name”

android:theme=“@style/AppTheme” >

<activity

android:name=“.SplashScreen”

android:label=“@string/app_name” >

<intent-filter>

<action android:name=“android.intent.action.MAIN” />

<category android:name=“android.intent.category.LAUNCHER” />

</intent-filter>

</activity>

<activity

android:name=“.Main”

android:label=“@string/app_name” >

<intent-filter>

<action android:name=“com.interactivedeveloper.simpletext.MAIN” />

<category android:name=“android.intent.category.DEFAULT” />

</intent-filter>

</activity>

</application>

</manifest>

 

Tinggalkan komentar