Skip to main content

source code suara binatang dengan android programing

buat lah file berextensi .xml di folder layout
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/layout_followed_top"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:weightSum="1"
android:orientation="vertical"
>
<GridView
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:stretchMode="columnWidth"
android:gravity="center"
>
</GridView>
</LinearLayout>
Buat satu layout lagi di folder layout dengan nama singleimage.xml , untuk menampilkan gambar dalam bentuk satuan, lihat 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="vertical" >

<ImageView
android:id="@+id/singleimage"
android:layout_width="wrap_content"
android:layout_height="0dip"
android:contentDescription="gambar tunggal"
android:layout_gravity="center_horizontal|center_vertical"
android:layout_weight="1"
/>

</LinearLayout>
Tahap berikutnya adalah kita akan membuat service sound , sehingga apabila gambar tsb di pencet akan mengeluarkan bunyi binatang sesuai dengan yang telah kita download, kita akan buat satu class dengan nama SoundBase.java, dengan memakai media player : lihat contoh code :
package com.alcytrite.suarabinatang;

import android.app.Service;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.IBinder;

public class SoundBase extends Service {
MediaPlayer media;
public static int[] resource = { R.raw.kodok, R.raw.tokek, R.raw.burung,
R.raw.macan };

@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}

@Override
public void onCreate() {
media = new MediaPlayer();
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
// TODO do something useful
Bundle extras = intent.getExtras();
int position = (Integer) extras.get("position");
media = MediaPlayer.create(this, SoundBase.resource[position]);
media.setLooping(false);
media.start();
// Toast.makeText(this,position,Toast.LENGTH_LONG).show();
return Service.START_STICKY;
}

@Override
public void onDestroy() {
media.stop();
media.release();
}
}
Untuk menampilkan Image yang telah kita download maka kita buat class ImageAdapter etends BaseAdapter , ini untuk memudahkan kita dalam hal pengaturan urutan Image , lihat contoh code :
package com.alcytrite.suarabinatang;

import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageView;

public class ImageAdapter extends BaseAdapter {

private Context mContext;

// constructor
public ImageAdapter(Context c) {
mContext = c;
}

public static Integer[] mThumbsId = { R.drawable.kodok, R.drawable.tokek,
R.drawable.burung, R.drawable.macan
};

public static String[] thumbString = { "Kodok keok",
"Tokek Koek", "Suara Burung berkicau", "macan Ngamuk" };

@Override
public int getCount() {
// TODO Auto-generated method stub
return mThumbsId.length;
}

@Override
public Object getItem(int position) {
// TODO Auto-generated method stub
return null;
}

@Override
public long getItemId(int position) {
// TODO Auto-generated method stub
return 0;
}

@Override
public View getView(int position, View view, ViewGroup group) {
// TODO Auto-generated method stub
ImageView imageView;
if (view == null) {
imageView = new ImageView(mContext);
int h = mContext.getResources().getDisplayMetrics().densityDpi;
imageView
.setLayoutParams(new GridView.LayoutParams(h - 45, h - 45));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(1, 1, 1, 1);
} else {
imageView = (ImageView) view;

}
imageView.setImageResource(mThumbsId[position]);
return imageView;
}

}
Untuk menampilkan Image dalam bentuk satuan , kita buat SingleImage.java , berikut contoh code nya  :
package com.alcytrite.suarabinatang;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;

public class SingleImage extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.singleimage);

int position = this.getIntent().getExtras().getInt("position");
ImageView iv = (ImageView) findViewById(R.id.singleimage);
int image = ImageAdapter.mThumbsId[position];
iv.setImageResource(image);
final Intent intent = new Intent(this, SoundBase.class);
intent.putExtra("position", position);
startService(intent);
iv.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
stopService(intent);
finish();
}
});
}
}
Image dan sound service class sudah kita buat, sekarang kita ubah di MainActivity.java , dimana kita akan tampilkan image , dan kita tambahkan event kalau di klik image tsb maka akan muncul image dalam bentuk satuan dan bunyi suara dari image tsb.
package com.alcytrite.suarabinatang;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.Toast;

public class MainActivity extends Activity implements OnItemClickListener {

GridView gridView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Toast.makeText(getBaseContext(), "Hai, Suara binatang akan tampil...",Toast.LENGTH_LONG).show();

setContentView(R.layout.activity_main);

gridView = (GridView) findViewById(R.id.gridview);
gridView.setAdapter(new ImageAdapter(this));
gridView.setOnItemClickListener(this);
}

@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// TODO Auto-generated method stub
Toast.makeText(getBaseContext(), ImageAdapter.thumbString[position],Toast.LENGTH_SHORT).show();
Intent i = new Intent(this,SingleImage.class);
Bundle b = new Bundle();
b.putInt("position",position);
i.putExtras(b);
startActivity(i);

}

@Override
public void onDestroy() {
super.onDestroy();
Runtime.getRuntime().gc();
}

}
Jangan lupa di file manifest anda perlu tambahkan activity lagi class SingleImage yang telah kita buat dan tambahkan service soundnya.
Anda bisa lihat contoh :
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.alcytrite.suarabinatang"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.alcytrite.suarabinatang.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>
<activity
android:name=".SingleImage"
android:label="@string/app_name" >
</activity>

<service android:name="SoundBase" />


</application>

</manifest>

Comments

Popular posts from this blog

Membuat topologi jaringan menggunakan routing static dengan cisco packet tracer

  Apa yang dimaksud routing static ? Static Routing atau Routing statis adalah sebuah router yang memiliki tabel routing statik yang di setting secara manual oleh para administrator jaringan. Routing static merupakan pengaturan paling sederhana dalam suatu jaringan komputer. Nah, disini kita akan belajar contoh penggunaan dari routing static tersebut. Contohnya seperti yang akan kita lakukan dibawah, selamat belajarr :) Buka aplikasi cisco packet tracer kemudian kita letakkan 2 router, 2 switch dan terdapat 2 PC pada masing-masing router. Pada gambar dibawah, hubungkan PC dengan Switch dan Router dengan Switch. Untuk menghubungkan Router dengan Router kita menggunakan kabel Cross. Pada gambar dibawah terdapat beberapa kab e l untuk menghubungkan sebuah jaringan yang bisa dilihat di cisco packet tracer. Namun untuk menghubungkan perangkat yang berbeda device, contohnya seperti PC dan Switch digunakan kabel Straight, namun jika perangkat sama seperti Router dengan router maka digunakan k

Tipe-Tipe Cewek Berdasarkan Lama Balas Di Chat WA

Cewek atau wanita adalah makhluk Tuhan paling rumit untuk dimengerti dan paling sulit untuk ditebak apa yang ada pada fikirannya . Makhluk yang memiliki slogan “ Cewek Selalu Benar dan Cowok Selalu Salah “  dari sebagian cewek itu adalah salah tapi sebagian besar cewek percaya dengan slogan itu yang membuat nya lebih percaya diri untuk menghukum lawan jenis atau cowok yang sedang memiliki hubungan asmara atau pun tidak tapi setidaknya slogan itu sebagai tameng atau penghalang terbaik untuk wanita agar bebas dari jerat seorang lelaki. Berikutnya slogan “ Cewek itu Rumit “ .. iya kan bener itu . Menurut penulis itu memang benar sampai ada meme yang bertuliskan bahwa trik atau tips untuk mengertiin wanita adalah seperti kamus inggiis-indonesia yang 3 miliar kata .. tebal banget dan panjang banget ..iya kan cewek seperti iitu .. hehehe yang cewek saya minta map ya  :D :D Oke kita bahas tipe cewek berdasarkan lama bales chat nya kepada kita .. ayooo capcussss.. !!! 1.