Advertisement
Guest User

Untitled

a guest
Mar 31st, 2020
192
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.19 KB | None | 0 0
  1. package com.example.germanverbsapp;
  2.  
  3. import com.google.android.gms.ads.MobileAds;
  4. import com.google.android.gms.ads.initialization.InitializationStatus;
  5. import com.google.android.gms.ads.initialization.OnInitializationCompleteListener;
  6. import com.google.android.gms.ads.AdRequest;
  7. import com.google.android.gms.ads.AdView;
  8.  
  9. import android.content.Context;
  10. import android.content.DialogInterface;
  11. import android.content.SharedPreferences;
  12. import android.content.pm.ActivityInfo;
  13. import android.content.res.Resources;
  14. import android.os.Bundle;
  15. import android.view.View;
  16. import android.widget.AdapterView;
  17. import android.widget.ArrayAdapter;
  18. import android.widget.Button;
  19. import android.widget.EditText;
  20. import android.widget.Spinner;
  21. import android.widget.TextView;
  22. import android.content.Intent;
  23. import android.view.View;
  24.  
  25. import androidx.appcompat.app.AppCompatActivity;
  26.  
  27. import java.io.BufferedReader;
  28. import java.io.IOException;
  29. import java.io.InputStreamReader;
  30. import android.app.AlertDialog;
  31. import android.content.DialogInterface;
  32.  
  33. public class MainActivity extends AppCompatActivity {
  34. private AdView mAdView;
  35.  
  36.  
  37.  
  38.  
  39. @Override
  40. protected void onCreate(Bundle savedInstanceState) {
  41. super.onCreate(savedInstanceState);
  42. setContentView(R.layout.activity_main);
  43.  
  44. MobileAds.initialize(this, new OnInitializationCompleteListener() {
  45. @Override
  46. public void onInitializationComplete(InitializationStatus initializationStatus) {
  47. }
  48. });
  49. mAdView = findViewById(R.id.adView);
  50. AdRequest adRequest = new AdRequest.Builder().build();
  51. mAdView.loadAd(adRequest);
  52.  
  53.  
  54. final Resources res = getResources();
  55. final String[] verbsArray = res.getStringArray(R.array.verbsArray); //for the spinner
  56. final Spinner spinner = findViewById(R.id.spinner);
  57. final ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.verbsArray, android.R.layout.simple_spinner_item);
  58. adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
  59. spinner.setAdapter(adapter);
  60.  
  61.  
  62.  
  63.  
  64. SharedPreferences prefs = getSharedPreferences("prefs", MODE_PRIVATE);
  65. boolean firstStart = prefs.getBoolean("firstStart", true);
  66. if (firstStart == true) {
  67. showStartDialog();
  68. }
  69.  
  70.  
  71. spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
  72. @Override
  73. public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
  74.  
  75. EditText inputEditText = findViewById(R.id.inputEditText);
  76.  
  77. if (position != 0) {
  78. inputEditText.setText(spinner.getSelectedItem().toString());
  79. }
  80. }
  81.  
  82. @Override
  83. public void onNothingSelected(AdapterView<?> parent) {
  84.  
  85. }
  86. });
  87. }
  88.  
  89.  
  90. String userInput;
  91. String outputTextVerb;
  92. String outputTextMeaning;
  93.  
  94. String outputTextL1;
  95. String outputTextL2;
  96. String outputTextL3;
  97. String outputTextL4;
  98. String outputTextL5;
  99. String outputTextL6;
  100. String outputTextL7;
  101.  
  102. String outputTextR1;
  103. String outputTextR2;
  104. String outputTextR3;
  105. String outputTextR4;
  106. String outputTextR5;
  107. String outputTextR6;
  108. String outputTextR7;
  109.  
  110. final TextView textView3 = findViewById(R.id.textView3);
  111.  
  112.  
  113.  
  114.  
  115. public void sendSecondActivity(View view){
  116.  
  117. textView3.setText("This worked.");
  118.  
  119. Intent intent = new Intent(MainActivity.this, SearchResultActivity.class);
  120. startActivity(intent);
  121.  
  122.  
  123. Resources res = getResources();
  124. String[] verbsArray = res.getStringArray(R.array.verbsArray); //for the spinner
  125. Spinner spinner = findViewById(R.id.spinner);
  126. ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.verbsArray, android.R.layout.simple_spinner_item);
  127.  
  128. spinner.setSelection(adapter.getPosition(userInput));
  129.  
  130. BufferedReader textReader = null;
  131. String scanned, userInput, userInputAst, userInputSpace;
  132. EditText inputEditText = (EditText) findViewById(R.id.inputEditText);
  133.  
  134. userInput = inputEditText.getText().toString();
  135. inputEditText.getText().toString();
  136. userInputAst = "*" + userInput;
  137. userInputSpace = " " + userInput;
  138.  
  139. label1:
  140. try {
  141. textReader = new BufferedReader(new InputStreamReader(getAssets().open("verbs.txt")));
  142. textReader.mark(25000);
  143.  
  144. textReader.reset();
  145.  
  146. for (int i = 0; i < 3000; i++) {
  147. textReader.mark(500);
  148. for (int j = 1; j <= 16; j++) {
  149. scanned = textReader.readLine();
  150. if (userInputAst.equals(scanned) || userInput.equals(scanned) || scanned.contains(userInputSpace)) {
  151. if (userInput.equals("Present:") || userInput.equals("Imperfect:")) {
  152. spinner.setSelection(0);
  153. break label1;
  154. }
  155. textReader.reset();
  156.  
  157. String verbAst = textReader.readLine();
  158. String verb = verbAst.replace("*", "");
  159.  
  160. if (scanned.equals("*****")) {
  161. spinner.setSelection(0);
  162. outputTextMeaning = "A valid irregular verb was not entered.";
  163. break label1;
  164. }
  165.  
  166. //if the user input matches a valid verb, the below is carried out
  167. outputTextVerb = verb;
  168. outputTextMeaning = textReader.readLine();
  169.  
  170. outputTextL1 = textReader.readLine();
  171. outputTextL2 = textReader.readLine();
  172. outputTextL3 = textReader.readLine();
  173. outputTextL4 = textReader.readLine();
  174. outputTextL5 = textReader.readLine();
  175. outputTextL6 = textReader.readLine();
  176. outputTextL7 = textReader.readLine();
  177.  
  178. outputTextR1 = textReader.readLine();
  179. outputTextR2 = textReader.readLine();
  180. outputTextR3 = textReader.readLine();
  181. outputTextR4 = textReader.readLine();
  182. outputTextR5 = textReader.readLine();
  183. outputTextR6 = textReader.readLine();
  184. outputTextR7 = textReader.readLine();
  185.  
  186. spinner.setSelection(adapter.getPosition(verb));
  187.  
  188.  
  189. break label1;
  190. }
  191.  
  192.  
  193. }
  194. }
  195.  
  196. } catch (IOException e) {
  197. System.out.println(e.getMessage());
  198. }
  199. }
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208. private void showStartDialog(){
  209. new AlertDialog.Builder(this)
  210. .setTitle("Welcome")
  211. .setMessage("To use this app, either use the scroll bar or search for an irregular verb. You can search for an infinitive or search for a conjugated verb e.g. 'du isst'.")
  212. .setPositiveButton("Ok!", new DialogInterface.OnClickListener(){
  213. @Override
  214. public void onClick(DialogInterface dialog, int which){
  215. dialog.dismiss();
  216. }
  217. })
  218. .create().show();
  219. SharedPreferences prefs = getSharedPreferences("prefs", MODE_PRIVATE);
  220. SharedPreferences.Editor editor = prefs.edit();
  221. editor.putBoolean("firstStart", false);
  222. editor.apply();
  223. }
  224.  
  225. }
  226.  
  227. //basically set it back to how it was before and then if reader reads '*****' set reader back to top (perhaps using .reset after setting .mark before it begins reading file, and then go on from there
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement