I'm trying to produce a simple oracle app where when you ask the app a question it spits out an answer based on a random number.
I've done some research and it seems to me the best practice way of doing things is to create a resource for my answers containing a string array, i can then type my various answers in to the array.
In my Java code in my main activity i can then generate a random number upon the click of a button. This random number can then correspond to the number of the index.
My problem comes when i try to piece the random number and the facility to access the string array together in code.
Here is a copy of my answerStrings.xml file
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string-array
name="answers">
<item>Yes</item>
<item>No</item>
<item>Maybe</item>
<item>Quite possibly</item>
</string-array>
</resources>
Here is my java code:
import java.util.Random;
import android.app.Activity;
import android.content.res.Resources;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.os.Vibrator;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.TextView;
public class MainActivity extends Activity implements OnClickListener {
TextView outputText;
MediaPlayer mpGobble;
Vibrator vibr;
String[] answers;
private Random myRandom = new Random();
int randomNumber;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//find the output text view for use within the activity
outputText = (TextView)findViewById(R.id.textView01);
outputText.setOnClickListener(this);
//Declare an array of outputs
Resources res = getResources();
String[] answers = res.getStringArray(R.array.answers);
//--------^ Problem
outputText.setText("Ask your question then click me");
}
@Override
public void onClick(View src) {
switch(src.getId()){
case R.id.textView01:
//creates a random number
int randomNumber = myRandom.nextInt(3);
String answer = answers[randomNumber];
outputText.setText(answer);
break;
}
}
}
I'm programming in Java with the eclipse IDE and as you have probably guessed i'm new to the game!
All help is much appreciated!!