package com.janasroboter; import androidx.appcompat.app.AppCompatActivity; import androidx.recyclerview.widget.DividerItemDecoration; import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.RecyclerView; import android.os.Bundle; import android.os.StrictMode; import android.view.View; import android.widget.EditText; import android.widget.Toast; import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import java.util.ArrayList; import java.util.List; import static com.janasroboter.REST.URL; public class MainActivity extends AppCompatActivity { private RecyclerView recyclerView; private RecyclerView.Adapter modeAdapter; private LinearLayoutManager layoutManager; private List data; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // Netzwerk aktivieren StrictMode.setThreadPolicy(new StrictMode .ThreadPolicy .Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() .penaltyLog() .build()); recyclerView = findViewById(R.id.recyclerv); recyclerView.setHasFixedSize(true); layoutManager = new LinearLayoutManager(getBaseContext()); recyclerView.setLayoutManager(layoutManager); data = new ArrayList<>(); setRecyclerData(data); modeAdapter = new ModeListAdapter(data); recyclerView.setAdapter(modeAdapter); recyclerView.addItemDecoration(new DividerItemDecoration(getBaseContext(), DividerItemDecoration.VERTICAL)); } private void setRecyclerData(List data) { data.add("Beide Augen"); data.add("SOS"); data.add("Abwechselnd blinken"); data.add("Ein Auge einmal, Ein Auge zweimal"); data.add("Augen blinken immer langsamer"); data.add("Augen blinken immer schneller"); data.add("Augen blinken zufällig"); } public void btnToggle(View view) { // Fehlernachricht in String schreiben String toast = "Obacht! Etwas ist schief gelaufen."; try { // Aufruf an den Mikrocontroller senden REST.getString(URL + "/toggle"); // Erfolgsnachricht anpassen toast = "Muster geändert."; } catch (IOException e) { e.printStackTrace(); } // Nachricht auf dem Bildschirm ausgeben Toast.makeText(this, toast, Toast.LENGTH_SHORT).show(); } public void btnLos(View view) { // Textfeld im Code verfügbar machen EditText state = view.getRootView().findViewById(R.id.state); // Zahl aus dem Textfeld auslesen String nummer = state.getText().toString(); // Fehlernachricht in String schreiben String toast = "Obacht! Etwas ist schief gelaufen."; try { // Aufruf mit Zahl an den Mikrocontroller senden REST.getString(URL + "/togglearg?state=" + nummer); // Erfolgsnachricht anpassen toast = "Muster auf " + nummer + " gesetzt."; } catch (IOException e) { e.printStackTrace(); } // Nachricht auf dem Bildschirm ausgeben Toast.makeText(this, toast, Toast.LENGTH_SHORT).show(); } public void btnSingen(View view) { String toast = "Obacht! Etwas ist schief gelaufen."; try { REST.getString(URL + "/singen"); toast = "Singen aktiviert"; } catch (IOException e) { e.printStackTrace(); } Toast.makeText(this, toast, Toast.LENGTH_SHORT).show(); } }