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

Pengumpulan Tugas Kelas XI TKJ - 2021-2022

Berdasarkan pembelajaran luring dari saya atas nama Pratama Gilang Firmansyah, S.Kom., MM silakan anda untuk mengunjungi Link berikut untuk melakukan pengumupulan tugas  dan yang saya sampaikan tadi  1.  Pengumpulan Tugas  Untuk siswa kelas XI Teknik Komputer dan jaringan silakan mengumpulkan tugas pada link dibawah ini sesuai dengan link yang sudah saya bagikan  Disini      Terima kasih  Wassalamualaikum wr.wb

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