Aplikasi Game Interaktif Untuk Umum Berbasis Android
LAMPIRAN
LIST PROGRAM
1. QuizActivity.java
package com.example.adananaulia.rpul;
import android.content.Intent;
import android.speech.tts.TextToSpeech;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.Random;
public class QuizActivity extends AppCompatActivity
implements View.OnClickListener{
private TextView question;
private ImageView gambar, hint, cek;
Universitas Sumatera Utara
private int[] images = {R.drawable.steve,
R.drawable.bill_gates, R.drawable.woz, R.drawable.mark,
R.drawable.sergey,
R.drawable.ram, R.drawable.apple2,
R.drawable.eniac, R.drawable.pc, R.drawable.iod,
R.drawable.software, R.drawable.hardware,
R.drawable.virus, R.drawable.program,
R.drawable.programmer};
private int[] soal = {R.string.no_satu, R.string.no_dua,
R.string.no_tiga, R.string.no_empat, R.string.no_lima,
R.string.no_enam, R.string.no_tujuh,
R.string.no_delapan, R.string.no_sembilan,
R.string.no_sepuluh,
R.string.no_sebelas, R.string.no_duabelas,
R.string.no_tigabelas, R.string.no_empatbelas,
R.string.no_limabelas
};
private String[] jawaban = {"Steve jobs", "Microsoft",
"Apple", "Mark Zuckerberg", "Sergey Brin",
"RAM", "Apple II", "ENIAC", "PC", "I/O Device",
"Software", "Hardware",
"Virus Komputer", "Program", "Programmer"
};
private int[] hintContent = {R.string.hint_1,
R.string.hint_2, R.string.hint_3, R.string.hint_4,
R.string.hint_5,
R.string.hint_6, R.string.hint_7, R.string.hint_8,
Universitas Sumatera Utara
R.string.hint_9, R.string.hint_10,
R.string.hint_11, R.string.hint_12,
R.string.hint_13, R.string.hint_14, R.string.hint_15
};
private EditText answer;
private int number, poin, count;
Random rand;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_quiz);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setTitle("Quiz");
question = (TextView) findViewById(R.id.question);
gambar = (ImageView) findViewById(R.id.imageKuis);
answer = (EditText) findViewById(R.id.answer);
cek = (ImageView) findViewById(R.id.cek);
hint = (ImageView) findViewById(R.id.hint);
rand = new Random();
number = rand.nextInt(10);
question.setText(soal[number]);
gambar.setImageResource(images[number]);
Universitas Sumatera Utara
poin = 0;
count = 0;
cek.setOnClickListener(this);
hint.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),
hintContent[number], Toast.LENGTH_LONG).show();
}
});
}
@Override
public void onClick(View v) {
String jawab =
answer.getText().toString().toLowerCase().trim();
count++;
Intent i;
if(count > 10){
Intent intent = new
Intent(getApplicationContext(), ResultActivity.class);
intent.putExtra("point", poin);
startActivity(intent);
finish();
}
Universitas Sumatera Utara
if(jawab.equals(jawaban[number].toLowerCase().trim())){
poin++;
Toast.makeText(getApplicationContext(), "Jawaban
Benar", Toast.LENGTH_SHORT).show();
number = rand.nextInt(10);
question.setText(soal[number]);
gambar.setImageResource(images[number]);
answer.setText("");
} else {
Toast.makeText(getApplicationContext(), "Jawaban
Salah", Toast.LENGTH_SHORT).show();
number = rand.nextInt(10);
question.setText(soal[number]);
gambar.setImageResource(images[number]);
answer.setText("");
}
}
}
2. CircleTransform.java
package com.example.adananaulia.rpul;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
Universitas Sumatera Utara
import android.graphics.Paint;
import
com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool;
import
com.bumptech.glide.load.resource.bitmap.BitmapTransformation
;
public class CircleTransform extends BitmapTransformation {
public CircleTransform(Context context) {
super(context);
}
@Override
protected Bitmap transform(BitmapPool pool, Bitmap
toTransform, int outWidth, int outHeight) {
return circleCrop(pool, toTransform);
}
private static Bitmap circleCrop(BitmapPool pool, Bitmap
source) {
if (source == null) return null;
int size = Math.min(source.getWidth(),
source.getHeight());
int x = (source.getWidth() - size) / 2;
int y = (source.getHeight() - size) / 2;
Universitas Sumatera Utara
// TODO this could be acquired from the pool too
Bitmap squared = Bitmap.createBitmap(source, x, y,
size, size);
Bitmap result = pool.get(size, size,
Bitmap.Config.ARGB_8888);
if (result == null) {
result = Bitmap.createBitmap(size, size,
Bitmap.Config.ARGB_8888);
}
Canvas canvas = new Canvas(result);
Paint paint = new Paint();
paint.setShader(new BitmapShader(squared,
BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));
paint.setAntiAlias(true);
float r = size / 2f;
canvas.drawCircle(r, r, r, paint);
return result;
}
@Override
public String getId() {
return getClass().getName();
}
}
Universitas Sumatera Utara
3. Detail Activity.java
package com.example.adananaulia.rpul;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
public class DetailActivity extends AppCompatActivity {
private int[] images = {R.drawable.steve,
R.drawable.bill_gates, R.drawable.woz, R.drawable.mark,
R.drawable.sergey,
R.drawable.ram, R.drawable.apple2,
R.drawable.eniac, R.drawable.pc, R.drawable.iod,
R.drawable.software, R.drawable.hardware,
R.drawable.virus, R.drawable.program,
R.drawable.programmer};
private String[] item = {"Steve Jobs", "Bill Gates",
"Steve Wozniak", "Mark Zuckerberg", "Sergey Brin",
"RAM", "Apple II", "ENIAC", "PC", "I/O Device",
"Software", "Hardware", "Virus Komputer", "Program",
"Programmer"};
private int[] detailString = {R.string.detailSteve,
R.string.detailBill, R.string.detailWoz,
R.string.detailMark, R.string.detailSergey,
R.string.ram, R.string.apple2, R.string.eniac,
Universitas Sumatera Utara
R.string.iod, R.string.software, R.string.hardware,
R.string.virus,
R.string.program, R.string.programmer};
private ImageView imageDetail;
private TextView textDetail;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
String title =
getIntent().getExtras().getString("detail");
int image =
getIntent().getExtras().getInt("detailImage");
int detail =
getIntent().getExtras().getInt("detailContent");
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setTitle(title);
imageDetail = (ImageView)
findViewById(R.id.imageDetail);
textDetail = (TextView)
findViewById(R.id.textDetail);
imageDetail.setImageResource(image);
textDetail.setText(detail);
}
Universitas Sumatera Utara
@Override
public void onBackPressed() {
super.onBackPressed();
Intent i = new Intent(getApplicationContext(),
EnsiklopediaActivity.class);
startActivity(i);
finish();
}
}
4. EnsiklopediaActivity.java
package com.example.adananaulia.rpul;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.Toast;
Universitas Sumatera Utara
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class EnsiklopediaActivity extends AppCompatActivity
{
private ListView listView;
private ArrayList myDatas;
private MyAdapter adapter;
private ImageView search;
private EditText findItem;
private int[] images = {R.drawable.steve,
R.drawable.bill_gates, R.drawable.woz, R.drawable.mark,
R.drawable.sergey,
R.drawable.ram, R.drawable.apple2,
R.drawable.eniac, R.drawable.pc, R.drawable.iod,
R.drawable.software, R.drawable.hardware,
R.drawable.virus, R.drawable.program,
R.drawable.programmer};
private String[] items = {"Steve Jobs", "Bill Gates",
"Steve Wozniak", "Mark Zuckerberg", "Sergey Brin",
"RAM", "Apple II", "ENIAC", "PC", "I/O Device",
Universitas Sumatera Utara
"Software", "Hardware", "Virus Komputer", "Program",
"Programmer"};
private int[] detailString = {R.string.detailSteve,
R.string.detailBill, R.string.detailWoz,
R.string.detailMark, R.string.detailSergey,
R.string.ram, R.string.apple2, R.string.eniac,
R.string.iod, R.string.pc, R.string.software,
R.string.hardware, R.string.virus,
R.string.program, R.string.programmer};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ensiklopedia);
getSupportActionBar().setTitle("Ensiklopedia");
getSupportActionBar().setHomeButtonEnabled(true);
listView = (ListView) findViewById(R.id.data);
search = (ImageView) findViewById(R.id.cek);
findItem = (EditText) findViewById(R.id.find);
initList();
listView.setOnItemClickListener(new
AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView parent,
View view, int position, long id) {
Universitas Sumatera Utara
Intent intent = new
Intent(getApplicationContext(), DetailActivity.class);
MyData data = myDatas.get(position);
intent.putExtra("detail", data.getTitle());
intent.putExtra("detailImage",
data.getImage());
intent.putExtra("detailContent",
data.getContent());
startActivity(intent);
}
});
search.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
String find =
findItem.getText().toString().toLowerCase();
myDatas.clear();
for(int i=0; i
LIST PROGRAM
1. QuizActivity.java
package com.example.adananaulia.rpul;
import android.content.Intent;
import android.speech.tts.TextToSpeech;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import java.util.Random;
public class QuizActivity extends AppCompatActivity
implements View.OnClickListener{
private TextView question;
private ImageView gambar, hint, cek;
Universitas Sumatera Utara
private int[] images = {R.drawable.steve,
R.drawable.bill_gates, R.drawable.woz, R.drawable.mark,
R.drawable.sergey,
R.drawable.ram, R.drawable.apple2,
R.drawable.eniac, R.drawable.pc, R.drawable.iod,
R.drawable.software, R.drawable.hardware,
R.drawable.virus, R.drawable.program,
R.drawable.programmer};
private int[] soal = {R.string.no_satu, R.string.no_dua,
R.string.no_tiga, R.string.no_empat, R.string.no_lima,
R.string.no_enam, R.string.no_tujuh,
R.string.no_delapan, R.string.no_sembilan,
R.string.no_sepuluh,
R.string.no_sebelas, R.string.no_duabelas,
R.string.no_tigabelas, R.string.no_empatbelas,
R.string.no_limabelas
};
private String[] jawaban = {"Steve jobs", "Microsoft",
"Apple", "Mark Zuckerberg", "Sergey Brin",
"RAM", "Apple II", "ENIAC", "PC", "I/O Device",
"Software", "Hardware",
"Virus Komputer", "Program", "Programmer"
};
private int[] hintContent = {R.string.hint_1,
R.string.hint_2, R.string.hint_3, R.string.hint_4,
R.string.hint_5,
R.string.hint_6, R.string.hint_7, R.string.hint_8,
Universitas Sumatera Utara
R.string.hint_9, R.string.hint_10,
R.string.hint_11, R.string.hint_12,
R.string.hint_13, R.string.hint_14, R.string.hint_15
};
private EditText answer;
private int number, poin, count;
Random rand;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_quiz);
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setTitle("Quiz");
question = (TextView) findViewById(R.id.question);
gambar = (ImageView) findViewById(R.id.imageKuis);
answer = (EditText) findViewById(R.id.answer);
cek = (ImageView) findViewById(R.id.cek);
hint = (ImageView) findViewById(R.id.hint);
rand = new Random();
number = rand.nextInt(10);
question.setText(soal[number]);
gambar.setImageResource(images[number]);
Universitas Sumatera Utara
poin = 0;
count = 0;
cek.setOnClickListener(this);
hint.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(),
hintContent[number], Toast.LENGTH_LONG).show();
}
});
}
@Override
public void onClick(View v) {
String jawab =
answer.getText().toString().toLowerCase().trim();
count++;
Intent i;
if(count > 10){
Intent intent = new
Intent(getApplicationContext(), ResultActivity.class);
intent.putExtra("point", poin);
startActivity(intent);
finish();
}
Universitas Sumatera Utara
if(jawab.equals(jawaban[number].toLowerCase().trim())){
poin++;
Toast.makeText(getApplicationContext(), "Jawaban
Benar", Toast.LENGTH_SHORT).show();
number = rand.nextInt(10);
question.setText(soal[number]);
gambar.setImageResource(images[number]);
answer.setText("");
} else {
Toast.makeText(getApplicationContext(), "Jawaban
Salah", Toast.LENGTH_SHORT).show();
number = rand.nextInt(10);
question.setText(soal[number]);
gambar.setImageResource(images[number]);
answer.setText("");
}
}
}
2. CircleTransform.java
package com.example.adananaulia.rpul;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapShader;
import android.graphics.Canvas;
Universitas Sumatera Utara
import android.graphics.Paint;
import
com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool;
import
com.bumptech.glide.load.resource.bitmap.BitmapTransformation
;
public class CircleTransform extends BitmapTransformation {
public CircleTransform(Context context) {
super(context);
}
@Override
protected Bitmap transform(BitmapPool pool, Bitmap
toTransform, int outWidth, int outHeight) {
return circleCrop(pool, toTransform);
}
private static Bitmap circleCrop(BitmapPool pool, Bitmap
source) {
if (source == null) return null;
int size = Math.min(source.getWidth(),
source.getHeight());
int x = (source.getWidth() - size) / 2;
int y = (source.getHeight() - size) / 2;
Universitas Sumatera Utara
// TODO this could be acquired from the pool too
Bitmap squared = Bitmap.createBitmap(source, x, y,
size, size);
Bitmap result = pool.get(size, size,
Bitmap.Config.ARGB_8888);
if (result == null) {
result = Bitmap.createBitmap(size, size,
Bitmap.Config.ARGB_8888);
}
Canvas canvas = new Canvas(result);
Paint paint = new Paint();
paint.setShader(new BitmapShader(squared,
BitmapShader.TileMode.CLAMP, BitmapShader.TileMode.CLAMP));
paint.setAntiAlias(true);
float r = size / 2f;
canvas.drawCircle(r, r, r, paint);
return result;
}
@Override
public String getId() {
return getClass().getName();
}
}
Universitas Sumatera Utara
3. Detail Activity.java
package com.example.adananaulia.rpul;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.TextView;
public class DetailActivity extends AppCompatActivity {
private int[] images = {R.drawable.steve,
R.drawable.bill_gates, R.drawable.woz, R.drawable.mark,
R.drawable.sergey,
R.drawable.ram, R.drawable.apple2,
R.drawable.eniac, R.drawable.pc, R.drawable.iod,
R.drawable.software, R.drawable.hardware,
R.drawable.virus, R.drawable.program,
R.drawable.programmer};
private String[] item = {"Steve Jobs", "Bill Gates",
"Steve Wozniak", "Mark Zuckerberg", "Sergey Brin",
"RAM", "Apple II", "ENIAC", "PC", "I/O Device",
"Software", "Hardware", "Virus Komputer", "Program",
"Programmer"};
private int[] detailString = {R.string.detailSteve,
R.string.detailBill, R.string.detailWoz,
R.string.detailMark, R.string.detailSergey,
R.string.ram, R.string.apple2, R.string.eniac,
Universitas Sumatera Utara
R.string.iod, R.string.software, R.string.hardware,
R.string.virus,
R.string.program, R.string.programmer};
private ImageView imageDetail;
private TextView textDetail;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_detail);
String title =
getIntent().getExtras().getString("detail");
int image =
getIntent().getExtras().getInt("detailImage");
int detail =
getIntent().getExtras().getInt("detailContent");
getSupportActionBar().setHomeButtonEnabled(true);
getSupportActionBar().setTitle(title);
imageDetail = (ImageView)
findViewById(R.id.imageDetail);
textDetail = (TextView)
findViewById(R.id.textDetail);
imageDetail.setImageResource(image);
textDetail.setText(detail);
}
Universitas Sumatera Utara
@Override
public void onBackPressed() {
super.onBackPressed();
Intent i = new Intent(getApplicationContext(),
EnsiklopediaActivity.class);
startActivity(i);
finish();
}
}
4. EnsiklopediaActivity.java
package com.example.adananaulia.rpul;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ImageView;
import android.widget.ListView;
import android.widget.Toast;
Universitas Sumatera Utara
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
public class EnsiklopediaActivity extends AppCompatActivity
{
private ListView listView;
private ArrayList myDatas;
private MyAdapter adapter;
private ImageView search;
private EditText findItem;
private int[] images = {R.drawable.steve,
R.drawable.bill_gates, R.drawable.woz, R.drawable.mark,
R.drawable.sergey,
R.drawable.ram, R.drawable.apple2,
R.drawable.eniac, R.drawable.pc, R.drawable.iod,
R.drawable.software, R.drawable.hardware,
R.drawable.virus, R.drawable.program,
R.drawable.programmer};
private String[] items = {"Steve Jobs", "Bill Gates",
"Steve Wozniak", "Mark Zuckerberg", "Sergey Brin",
"RAM", "Apple II", "ENIAC", "PC", "I/O Device",
Universitas Sumatera Utara
"Software", "Hardware", "Virus Komputer", "Program",
"Programmer"};
private int[] detailString = {R.string.detailSteve,
R.string.detailBill, R.string.detailWoz,
R.string.detailMark, R.string.detailSergey,
R.string.ram, R.string.apple2, R.string.eniac,
R.string.iod, R.string.pc, R.string.software,
R.string.hardware, R.string.virus,
R.string.program, R.string.programmer};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ensiklopedia);
getSupportActionBar().setTitle("Ensiklopedia");
getSupportActionBar().setHomeButtonEnabled(true);
listView = (ListView) findViewById(R.id.data);
search = (ImageView) findViewById(R.id.cek);
findItem = (EditText) findViewById(R.id.find);
initList();
listView.setOnItemClickListener(new
AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView parent,
View view, int position, long id) {
Universitas Sumatera Utara
Intent intent = new
Intent(getApplicationContext(), DetailActivity.class);
MyData data = myDatas.get(position);
intent.putExtra("detail", data.getTitle());
intent.putExtra("detailImage",
data.getImage());
intent.putExtra("detailContent",
data.getContent());
startActivity(intent);
}
});
search.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
String find =
findItem.getText().toString().toLowerCase();
myDatas.clear();
for(int i=0; i