Obecnie kod wywala aplikacje po naciśnięciu przycisku czy wie ktoś jak można to naprawić? Moim planem jest to, aby ten program po wpisaniu przez usera sprawdzał tekst i jeśli tekst będzie taki sam jak dana zmiennną z tablicy to zmieni aktywnosc na End.java po zmianie aktywności wysłał flagę true/false do pliku End.java
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/holo_orange_dark"
tools:context=".Start">
<Button
android:id="@+id/check"
android:layout_width="420dp"
android:layout_height="112dp"
android:layout_marginBottom="160dp"
android:background="@android:color/holo_orange_light"
android:text="sprawdz"
android:textAlignment="center"
android:textSize="40sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1.0"
app:layout_constraintStart_toStartOf="parent" />
<TextView
android:id="@+id/word_random"
android:layout_width="0dp"
android:layout_height="80dp"
android:layout_marginTop="32dp"
android:background="@android:color/holo_green_light"
android:text="@string/textview"
android:textAlignment="center"
android:textSize="24sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:ignore="MissingConstraints" />
<EditText
android:id="@+id/user_word"
android:layout_width="0dp"
android:layout_height="62dp"
android:layout_marginTop="64dp"
android:autofillHints=""
android:background="@android:color/white"
android:contentDescription="słowo"
android:text=""
android:ems="10"
android:inputType="textPersonName"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/word_random"
tools:ignore="MissingConstraints" />
</android.support.constraint.ConstraintLayout>
package com.example.instalingv3;
import android.content.Intent;
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.TextView;
public class Start extends AppCompatActivity {
//public final String complit="Gratulacje";
//public final String fail="Niestety Nie";
public String resolt;
private int loop = 19;
private int random = 81;
private String[] rand_same = new String[loop + 1];
private String user;
private int[] rand = new int[loop + 1];
//private Scanner scanner = new Scanner(System.in);
private int[] miss = new int[loop + 1];
private int m = 0;
private int i = 0;
private int j = 0;
private boolean p;
private String[] word = new String[]{
"0. word_ang - word_pl\n" + "1. gap year / take a gap year - rok przerwy po ukończeniu szkoły średniej\n" +
"2. safety course - kurs zasad bezpieczeństwa\n" + "3. increase - zwiększać się (o ilości/jakości)\n" +
"4. decrease - zmniejszać się (o ilości/jakości)\n" +
"5. within walking distance - w odległości, którą można pokonać pieszo\n" +
"6. mention - wspomnieć o czymś\n" + "7. overland - drogą lądową / naziemny\n" +
"8. memorable - niezapomniany/ godny zapamiętania\n" +
"9. sign up with - zapisać się/zaangażować/związać się z \n" +
"10. deliverer - doręczyciel/dostawca\n" + "11. paragliding - paralotnia\n" + "12. placement - położenie/lokalizacja\n" +
"13. research - badania naukowe\n" + "14. expences - wydatki\n" + "15. cruise ship - statek rejsowy\n" +
"16. on board - na pokładzie\n" + "17. off the coast - z daleka od brzegu\n" + "18. available - dostępne\n" +
"19. working hours - godziny pracy\n" + "20. deal with - radzić sobie z\n" + "21. counsellor - doradca/opiekun\n" +
"22. freelance - pracować jako wolny strzelec\n" + "23. call back - oddzwonić później\n" + "24. take on - zatrudniać\n" +
"25. hold a certificate - posiadać dyplom\n" + "26. put through - połączyć przez telefon\n" + "27. flood - powódź\n" +
"28. volcanic eruption - wybuch wulkanu\n" + "29. drought - susza\n" + "30. pollution - zanieczyszczenie\n" +
"31. earthquake - trzęsienie ziemi\n" + "32. pump out - wypompowywać/emitować\n" + "33. toward - w kierunku\n" +
"34. grow - rosnąć/uprawiać\n" + "35. canoe - kajak\n" + "36. fireworks - fajerwerki\n" +
"37. light up - rozświetlić\n" + "38. sheke - trząść się\n" + "39. fall off - spadać/odpadać\n" +
"40. twister - tornado/trąba powietrzna\n" + "41. calm - spokojny/nieporuszony\n" +
"42. weatherman - prezenter pogody\n" + "43. strike - uderzyć/nadejść/dopaść\n" +
"44. pray - modlić się\n" + "45. prayer - modlitwa\n" + "46. put down - wpisywać/kłaść\n" +
"47. huge - ogromny/olbrzymi\n" + "48. directly - bezpośrednio\n" + "49. unexpected - nieoczekiwany\n" +
"50. expected - oczekiwany\n" + "51. chase - gonić/ścigać\n" +
"52. awake - obudzony/przebudzony/obudzić/przebudzić się\n" +
"53. prediction - przewidywanie\n" + "54. predict - przewidywać\n" +
"55. spontaneous decision - decyzja spontaniczna\n" + "56. global warming - globalne ocieplenie\n" +
"57. rising level - podnoszący się poziom\n" +
"58. cover - przykrywać/pokrywać/przykrywa/pokrywa (czasownik i rzeczownik)\n" + "59. glacier - lodowiec\n" +
"60. well - studnia\n" + "61. cause - powodować\n" + "62. precious - drogocanny\n" +
"63. collect donations - zbierać datki\n" + "64. fossil fuel - paliwo kopalne\n" +
"65. ice cap - pokrywa lodowa\n" + "66. blanket - koc\n" + "67. shortage - brak/niedobór\n" +
"68. leak - przeciekać/wyciek\n" + "69. dispose of - unieszkodliwić/uporać się z\n" +
"70. dump - skład/zrzut\n" + "71. breed - rasa/gatunek\n" + "72. die out - wymrzeć/wyginąć\n" +
"73. scarce - rzadki/mało spotykany\n" + "74. look for - szukać\n" + "75. look after - opiekować się\n" +
"76. cub - kocię/młode\n" + "77. cuddly - milutki\n" + "78. fierce-looking - wyglądający groźnie\n" +
"79. habitat - środowisko/miejsce występowania\n" + "80. in case of - w razie/jeśli wystąpi\n"
};
private String[] row_spliter = new String[random];
private String[] word_pl = new String[row_spliter.length];
private String[] word_ang = new String[row_spliter.length];
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_start);
for (int i = 0; i <= random - 1; i++) {
String[] split_n = word[0].split("\n");
for (int j = 0; j <= random - 1; j++) {
row_spliter[j] = split_n[j];
}
}
for (int i = 0; i <= random - 1; i++) {
row_spliter[i] = row_spliter[i].replace(i + ". ", "");
}
String[][] wordsArray = new String[2][row_spliter.length];
for (int i = 0; i <= row_spliter.length - 1; i++) {
String[] word_split = row_spliter[i].split(" - ");
for (int j = 0; j < word_split.length; j++) {
wordsArray[j][i] = word_split[j];
}
}
for (int i = 0; i <= row_spliter.length - 1; i++) {
word_ang[i] = wordsArray[0][i];
word_pl[i] = wordsArray[1][i];
if (word_ang[i].contains("/")) {
word_ang[i] = word_ang[i].substring(0, word_ang[i].indexOf("/"));
}
while (word_ang[i].endsWith(" ") || (word_pl[i].startsWith(" "))) {
if (word_ang[i].endsWith(" ")) {
word_ang[i] = word_ang[i].substring(0, word_ang[i].length() - 1);
}
if (word_pl[i].startsWith(" ")) {
word_pl[i] = word_pl[i].replaceFirst(" ", "");
}
}
}
/////////////////////////////////////////////////////////////////////////////
int[] rand_back = new int[loop + 1];
for (int i = 0; i <= loop; i++) {
rand[i] = (int) (Math.random() * row_spliter.length + 1);
}
for (int i = 0; i <= loop; i++) {
rand_back[i] = rand[i];
}
for (int i = 0; i <= loop; ) {
for (int j = 0; j <= loop; j++) {
if ((rand[i] == rand_back[j]) && (j != i)) {
rand[j] = (int) (Math.random() * row_spliter.length + 1);
}
if (j == loop) {
j = 0;
i++;
}
if (i == loop) {
break;
}
}
if (i == loop) {
break;
}
}
TextView word_random = (TextView) findViewById(R.id.word_random);
word_random.setText(word_pl[rand[i]] + " " + i);
checkingWord();
}
String user_word_string = "";
boolean checking;
private void checkingWord() {
Button check = (Button) findViewById(R.id.check);
EditText user_word = (EditText) findViewById(R.id.user_word);
user_word_string = user_word.getText().toString();
i = 0;
final Start resol = new Start();
check.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
for (int j = 0; j <= loop; ) {
if (word_ang[rand[i]].equalsIgnoreCase(user_word_string)) {
i++;
j++;
p = true;
resol.resolt();
startActivity(new Intent(Start.this, End.class));
} else {
miss[i] = rand[i];
i++;
j++;
m++;
p = false;
resol.resolt();
startActivity(new Intent(Start.this, End.class));
}
}
}
});
}
public void checking_user_word() {
if (user_word_string.equalsIgnoreCase(word_ang[rand[i]])) {
checking = true;
} else {
checking = false;
}
}
public void resolt() {
if (word_ang[rand[i]].equals(user_word_string)) {
resolt = "Gratulacje";
} else {
resolt = "Niestety nie";
}
}
}