117 lines
3.7 KiB
Java
117 lines
3.7 KiB
Java
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<String> 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<String> 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();
|
|
}
|
|
|
|
|
|
}
|