Finns det något bättre sätt att få ut rader och kolumner när man läser in text en char i taget?for(int r = 0; r < rows; r++)
{
//loop through the columns of each row
for(int c = 0; c < cols; c++)
{
while(mazeIterator.hasNext())
{
mazeData[r][c]=mazeIterator.next();
}
}
}
public Maze(java.io.Reader fileInput) throws IOException
{
BufferedReader reader = new BufferedReader(fileInput);
String readLine;
StringBuilder mazeString = new StringBuilder();
//Read through file first to get rows and columns.
while ((readLine = reader.readLine()) != null)
{
// process the line
rows++;
cols = 0;
cols = readLine.length(); // always the size of the last line in the file
mazeString.append(readLine);
}
MazeData = new Character[rows][cols];
for(int i = 0; i<mazeString.length(); i++)
{
for(int r = 0; r < rows; r++)
{
//loop through the columns of each row
for(int c = 0; c < cols; c++)
{
MazeData[r][c] = mazeString.charAt(i);
}
}
}
}
//Prints the maze.
public void printMaze()
{
for(int r = 0; r < rows; r++)
{
//loop through the columns of each row
for(int c = 0; c < cols; c++)
{
System.out.print(MazeData[r][c]);
}
System.out.println();
}
}
if(repeat){
if(!soundPlayerPlaying){
chooseSound.start();
chooseSound.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.release();
soundPlayerPlaying = false;
}
});
}
}
else {
chooseSound.start();
}
if(repeat){
if(!soundPlayerPlaying){
chooseSound.start();
chooseSound.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.release();
soundPlayerPlaying = false;
}
});
}
}
else {
chooseSound.start();
}
class SoundPlayer extends MediaPlayer {
public static boolean soundPlayerPlaying = false;
public static void soundPlayerMethod(Context context, Boolean repeat){
//private void soundPlayerMethod(){
// Create variable for sound
MediaPlayer chooseSound = new MediaPlayer();
// Number of cat sound clips in raw folder
int max = 17;
int min = 1;
// Randomize playbacks of cats
Random rand = new Random();
int randomNum = rand.nextInt((max - min) + 1) + min;
switch (randomNum) {
case 1:{ chooseSound = MediaPlayer.create(context, R.raw.meow_1);break;}
case 2:{ chooseSound = MediaPlayer.create(context, R.raw.meow_2);break;}
case 3:{ chooseSound = MediaPlayer.create(context, R.raw.meow_3);break;}
case 4:{ chooseSound = MediaPlayer.create(context, R.raw.meow_4);break;}
case 5:{ chooseSound = MediaPlayer.create(context, R.raw.meow_5);break;}
case 6:{ chooseSound = MediaPlayer.create(context, R.raw.meow_6);break;}
case 7:{ chooseSound = MediaPlayer.create(context, R.raw.meow_7);break;}
case 8:{ chooseSound = MediaPlayer.create(context, R.raw.meow_8);break;}
case 9:{ chooseSound = MediaPlayer.create(context, R.raw.meow_9);break;}
case 10:{ chooseSound = MediaPlayer.create(context, R.raw.meow_10);break;}
case 11:{ chooseSound = MediaPlayer.create(context, R.raw.meow_11);break;}
case 12:{ chooseSound = MediaPlayer.create(context, R.raw.meow_12);break;}
case 13:{ chooseSound = MediaPlayer.create(context, R.raw.meow_13);break;}
case 14:{ chooseSound = MediaPlayer.create(context, R.raw.meow_14);break;}
case 15:{ chooseSound = MediaPlayer.create(context, R.raw.meow_15);break;}
case 16:{ chooseSound = MediaPlayer.create(context, R.raw.meow_16);break;}
case 17:{ chooseSound = MediaPlayer.create(context, R.raw.meow_17);break;}
}
//Switch switchRepeat = (Switch) findViewById(R.id.switchRepeat);
if(repeat){
if(!soundPlayerPlaying){
chooseSound.start();
chooseSound.setOnCompletionListener(new OnCompletionListener() {
public void onCompletion(MediaPlayer mp) {
mp.release();
soundPlayerPlaying = false;
}
});
}
}
else {
chooseSound.start();
}
final MediaPlayer playSound = new MediaPlayer();
final SoundPlayer sound = new SoundPlayer();
playMeow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// After button click, change button text
playMeow.setText(R.string.generate_meow_after);
do {
try
{
sound.soundPlayerMethod(Main.this, switchRepeat.isChecked(), playSound);
}
catch (Exception e)
{
return;
}
}while(switchRepeat.isChecked());
}
});
class SoundPlayer extends MediaPlayer {
public static void soundPlayerMethod(Context context, Boolean repeat, MediaPlayer chooseSound){
// Number of cat sound clips in raw folder
int max = 17;
int min = 1;
// Randomize playbacks of cats
Random rand = new Random();
int randomNum = rand.nextInt((max - min) + 1) + min;
switch (randomNum) {
case 1:{ chooseSound = MediaPlayer.create(context, R.raw.meow_1);break;}
case 2:{ chooseSound = MediaPlayer.create(context, R.raw.meow_2);break;}
case 3:{ chooseSound = MediaPlayer.create(context, R.raw.meow_3);break;}
case 4:{ chooseSound = MediaPlayer.create(context, R.raw.meow_4);break;}
case 5:{ chooseSound = MediaPlayer.create(context, R.raw.meow_5);break;}
case 6:{ chooseSound = MediaPlayer.create(context, R.raw.meow_6);break;}
case 7:{ chooseSound = MediaPlayer.create(context, R.raw.meow_7);break;}
case 8:{ chooseSound = MediaPlayer.create(context, R.raw.meow_8);break;}
case 9:{ chooseSound = MediaPlayer.create(context, R.raw.meow_9);break;}
case 10:{ chooseSound = MediaPlayer.create(context, R.raw.meow_10);break;}
case 11:{ chooseSound = MediaPlayer.create(context, R.raw.meow_11);break;}
case 12:{ chooseSound = MediaPlayer.create(context, R.raw.meow_12);break;}
case 13:{ chooseSound = MediaPlayer.create(context, R.raw.meow_13);break;}
case 14:{ chooseSound = MediaPlayer.create(context, R.raw.meow_14);break;}
case 15:{ chooseSound = MediaPlayer.create(context, R.raw.meow_15);break;}
case 16:{ chooseSound = MediaPlayer.create(context, R.raw.meow_16);break;}
case 17:{ chooseSound = MediaPlayer.create(context, R.raw.meow_17);break;}
}
chooseSound.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
mediaPlayer.stop();
}
});
chooseSound.start();
}
}
final MediaPlayer playSound = new MediaPlayer();
final SoundPlayer sound = new SoundPlayer();
playMeow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// After button click, change button text
playMeow.setText(R.string.generate_meow_after);
do {
try
{
sound.soundPlayerMethod(Main.this, switchRepeat.isChecked(), playSound);
}
catch (Exception e)
{
return;
}
}while(switchRepeat.isChecked());
}
});
class SoundPlayer extends MediaPlayer {
public static void soundPlayerMethod(Context context, Boolean repeat, MediaPlayer chooseSound){
// Number of cat sound clips in raw folder
int max = 17;
int min = 1;
// Randomize playbacks of cats
Random rand = new Random();
int randomNum = rand.nextInt((max - min) + 1) + min;
switch (randomNum) {
case 1:{ chooseSound = MediaPlayer.create(context, R.raw.meow_1);break;}
case 2:{ chooseSound = MediaPlayer.create(context, R.raw.meow_2);break;}
case 3:{ chooseSound = MediaPlayer.create(context, R.raw.meow_3);break;}
case 4:{ chooseSound = MediaPlayer.create(context, R.raw.meow_4);break;}
case 5:{ chooseSound = MediaPlayer.create(context, R.raw.meow_5);break;}
case 6:{ chooseSound = MediaPlayer.create(context, R.raw.meow_6);break;}
case 7:{ chooseSound = MediaPlayer.create(context, R.raw.meow_7);break;}
case 8:{ chooseSound = MediaPlayer.create(context, R.raw.meow_8);break;}
case 9:{ chooseSound = MediaPlayer.create(context, R.raw.meow_9);break;}
case 10:{ chooseSound = MediaPlayer.create(context, R.raw.meow_10);break;}
case 11:{ chooseSound = MediaPlayer.create(context, R.raw.meow_11);break;}
case 12:{ chooseSound = MediaPlayer.create(context, R.raw.meow_12);break;}
case 13:{ chooseSound = MediaPlayer.create(context, R.raw.meow_13);break;}
case 14:{ chooseSound = MediaPlayer.create(context, R.raw.meow_14);break;}
case 15:{ chooseSound = MediaPlayer.create(context, R.raw.meow_15);break;}
case 16:{ chooseSound = MediaPlayer.create(context, R.raw.meow_16);break;}
case 17:{ chooseSound = MediaPlayer.create(context, R.raw.meow_17);break;}
}
chooseSound.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
mediaPlayer.stop();
}
});
chooseSound.start();
}
}
class SoundPlayer {
private boolean shouldRepeat = false;
private Context context;
private SoundEndedHandler endedHandler = new SoundEndedHandler();
public SoundPlayer(Context context) {
this.context = context;
}
public void setRepeat(boolean repeat) {
shouldRepeat = repeat;
}
public void play() {
// Number of cat sound clips in raw folder
int max = 17;
int min = 1;
// Randomize playbacks of cats
Random rand = new Random();
int randomNum = rand.nextInt((max - min) + 1) + min;
switch (randomNum) {
case 1:{ chooseSound = MediaPlayer.create(context, R.raw.meow_1);break;}
case 2:{ chooseSound = MediaPlayer.create(context, R.raw.meow_2);break;}
case 3:{ chooseSound = MediaPlayer.create(context, R.raw.meow_3);break;}
case 4:{ chooseSound = MediaPlayer.create(context, R.raw.meow_4);break;}
case 5:{ chooseSound = MediaPlayer.create(context, R.raw.meow_5);break;}
case 6:{ chooseSound = MediaPlayer.create(context, R.raw.meow_6);break;}
case 7:{ chooseSound = MediaPlayer.create(context, R.raw.meow_7);break;}
case 8:{ chooseSound = MediaPlayer.create(context, R.raw.meow_8);break;}
case 9:{ chooseSound = MediaPlayer.create(context, R.raw.meow_9);break;}
case 10:{ chooseSound = MediaPlayer.create(context, R.raw.meow_10);break;}
case 11:{ chooseSound = MediaPlayer.create(context, R.raw.meow_11);break;}
case 12:{ chooseSound = MediaPlayer.create(context, R.raw.meow_12);break;}
case 13:{ chooseSound = MediaPlayer.create(context, R.raw.meow_13);break;}
case 14:{ chooseSound = MediaPlayer.create(context, R.raw.meow_14);break;}
case 15:{ chooseSound = MediaPlayer.create(context, R.raw.meow_15);break;}
case 16:{ chooseSound = MediaPlayer.create(context, R.raw.meow_16);break;}
case 17:{ chooseSound = MediaPlayer.create(context, R.raw.meow_17);break;}
}
chooseSound.setOnCompletionListener(endedHandler);
chooseSound.start();
}
private class SoundEndedHandler implements OnCompletionListener {
public void onCompletion(MediaPlayer sound) {
sound.release();
if (shouldRepeat) {
play();
}
}
}
}
final SoundPlayer soundPlayer = new SoundPlayer(Main.this);
playMeow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// After button click, change button text
playMeow.setText(R.string.generate_meow_after);
soundPlayer.setRepeat(switchRepeat.isChecked()); // Detta borde ligga i en listener som kollar om switchRepeat ändrar state.
try
{
soundPlayer.play();
}
catch (Exception e)
{
return;
}
}
});
class SoundPlayer {
private boolean shouldRepeat = false;
private Context context;
private SoundEndedHandler endedHandler = new SoundEndedHandler();
public SoundPlayer(Context context) {
this.context = context;
}
public void setRepeat(boolean repeat) {
shouldRepeat = repeat;
}
public void play() {
// Number of cat sound clips in raw folder
int max = 17;
int min = 1;
// Randomize playbacks of cats
Random rand = new Random();
int randomNum = rand.nextInt((max - min) + 1) + min;
switch (randomNum) {
case 1:{ chooseSound = MediaPlayer.create(context, R.raw.meow_1);break;}
case 2:{ chooseSound = MediaPlayer.create(context, R.raw.meow_2);break;}
case 3:{ chooseSound = MediaPlayer.create(context, R.raw.meow_3);break;}
case 4:{ chooseSound = MediaPlayer.create(context, R.raw.meow_4);break;}
case 5:{ chooseSound = MediaPlayer.create(context, R.raw.meow_5);break;}
case 6:{ chooseSound = MediaPlayer.create(context, R.raw.meow_6);break;}
case 7:{ chooseSound = MediaPlayer.create(context, R.raw.meow_7);break;}
case 8:{ chooseSound = MediaPlayer.create(context, R.raw.meow_8);break;}
case 9:{ chooseSound = MediaPlayer.create(context, R.raw.meow_9);break;}
case 10:{ chooseSound = MediaPlayer.create(context, R.raw.meow_10);break;}
case 11:{ chooseSound = MediaPlayer.create(context, R.raw.meow_11);break;}
case 12:{ chooseSound = MediaPlayer.create(context, R.raw.meow_12);break;}
case 13:{ chooseSound = MediaPlayer.create(context, R.raw.meow_13);break;}
case 14:{ chooseSound = MediaPlayer.create(context, R.raw.meow_14);break;}
case 15:{ chooseSound = MediaPlayer.create(context, R.raw.meow_15);break;}
case 16:{ chooseSound = MediaPlayer.create(context, R.raw.meow_16);break;}
case 17:{ chooseSound = MediaPlayer.create(context, R.raw.meow_17);break;}
}
chooseSound.setOnCompletionListener(endedHandler);
chooseSound.start();
}
private class SoundEndedHandler implements OnCompletionListener {
public void onCompletion(MediaPlayer sound) {
sound.release();
if (shouldRepeat) {
play();
}
}
}
}
final SoundPlayer soundPlayer = new SoundPlayer(Main.this);
playMeow.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// After button click, change button text
playMeow.setText(R.string.generate_meow_after);
soundPlayer.setRepeat(switchRepeat.isChecked()); // Detta borde ligga i en listener som kollar om switchRepeat ändrar state.
try
{
soundPlayer.play();
}
catch (Exception e)
{
return;
}
}
});

Du måste vara medlem för att kunna kommentera
Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!
Swish: 123 536 99 96 Bankgiro: 211-4106