Files
janasRoboter/app/src/main/java/com/janasroboter/MainActivity.java
2020-05-05 11:07:17 +02:00

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();
}
}