From 404091db150c5626f109b455589ad838639cd0ba Mon Sep 17 00:00:00 2001 From: Miguel Siebenhaar Date: Wed, 21 Jun 2023 23:40:05 +0200 Subject: [PATCH 1/3] Version 4.2 with num for counter Detections --- .../Fragments/Fragment1.java | 8 +++++ .../Fragments/Fragment3.java | 24 +++++++++++--- .../ueberwachungssystem/MainActivity.java | 31 ++++++++++++++----- app/src/main/res/layout/activity_main.xml | 2 +- 4 files changed, 53 insertions(+), 12 deletions(-) diff --git a/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment1.java b/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment1.java index ac3ddd8..417ccfe 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment1.java +++ b/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment1.java @@ -19,6 +19,7 @@ import java.io.File; public class Fragment1 extends Fragment { private String text; + private final static String KEY_TEXT = "KEY_TEXT"; private void log(String nachricht) { Log.d(this.getClass().getSimpleName(), nachricht); @@ -39,6 +40,13 @@ public class Fragment1 extends Fragment { fragment.setArguments(b); return fragment; } + public static Fragment1 aktualisieren(String text){ + Fragment1 fragment = new Fragment1(); + Bundle b = new Bundle(); + b.putString(KEY_TEXT, text); + fragment.setArguments(b); + return fragment; + } @Override public void onCreate(Bundle bundle) { super.onCreate(bundle); diff --git a/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java b/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java index 2235c47..7f51c28 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java +++ b/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java @@ -21,8 +21,10 @@ import java.util.Arrays; import java.util.List; public class Fragment3 extends Fragment { + + private OnImageViewReadyListener onImageViewReadyListener; private String text; - public ImageView ivp; + public static ImageView ivp; private final static String KEY_TEXT = "KEY_TEXT"; private void log(String nachricht) { Log.d(this.getClass().getSimpleName(), nachricht); @@ -32,16 +34,30 @@ public class Fragment3 extends Fragment { public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle bundle) { log("onCreateView"); View view = inflater.inflate(R.layout.fragment3, container, false); - ivp = (ImageView) view.findViewById(R.id.Video); + if (onImageViewReadyListener != null) { + ImageView ivp = (ImageView) view.findViewById(R.id.Video); + onImageViewReadyListener.onImageViewReady(ivp); + } return view; } - public static Fragment3 erstellen(String text) { + public static Fragment3 erstellen(View view) { Fragment3 fragment = new Fragment3(); Bundle b = new Bundle(); - b.putString(KEY_TEXT, text); + b.putString(KEY_TEXT, "Test"); fragment.setArguments(b); return fragment; } + public interface OnImageViewReadyListener { + void onImageViewReady(ImageView imageView); + } + public void onAttach(Context context) { + super.onAttach(context); + try { + onImageViewReadyListener = (OnImageViewReadyListener) context; + } catch (ClassCastException e) { + throw new ClassCastException(context.toString() + " must implement OnImageViewReadyListener"); + } + } @Override public void onCreate(Bundle bundle) { super.onCreate(bundle); diff --git a/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java b/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java index 5c6d973..6b356a7 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java +++ b/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java @@ -6,6 +6,7 @@ import androidx.fragment.app.FragmentTransaction; import androidx.annotation.NonNull; import androidx.appcompat.app.AppCompatActivity; +import android.annotation.SuppressLint; import android.content.ComponentName; import android.content.Context; import android.content.Intent; @@ -17,6 +18,7 @@ import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.widget.Button; +import android.widget.ImageView; import android.widget.TextView; import android.widget.Toast; import android.widget.ToggleButton; @@ -27,15 +29,21 @@ import com.example.ueberwachungssystem.Detection.DetectorService; import com.example.ueberwachungssystem.Fragments.Fragment3; @ExperimentalGetImage -public class MainActivity extends AppCompatActivity { +public class MainActivity extends AppCompatActivity implements Fragment3.OnImageViewReadyListener{ //StringBuffer private StringBuffer messageBuffer = new StringBuffer(); //Fragmente private Fragment aktuellesFragment; + private Fragment fragment1_; + private Fragment fragment2_; + private Fragment fragment3_; + private Fragment1 fragment1; private Fragment2 fragment2; private Fragment3 fragment3; + + private ImageView fragmentImage; private DetectorService detectorService = new DetectorService(); int num=0; //Textviews @@ -161,15 +169,17 @@ public class MainActivity extends AppCompatActivity { public void onServiceConnected(ComponentName name, IBinder service) { DetectorService.ServiceBinder binder = (DetectorService.ServiceBinder) service; detectorService = binder.getBoundService(); -// detectorService.videoDetector.debugProcessing(null, outputImageView); //inputImageView detectorService.setOnDetectionListener(new DetectorService.OnDetectionListener() { @Override public void onDetection(@NonNull StringBuffer stringBuffer) { Log.d("onDetection", stringBuffer.toString()); //Für oli hier Textview einbauen - num++; + num = stringBuffer.toString().split("\n").length; messageBuffer = stringBuffer; - zeigeFragment(fragment1.erstellen(messageBuffer.toString())); + if ((aktuellesFragment == fragment1_) && (aktuellesFragment != null)) { + Log.d("Fragment", aktuellesFragment.toString() + " " + fragment1_.toString()); + fragment1_ = zeigeFragment(fragment1.erstellen(messageBuffer.toString())); + } } }); } @@ -180,26 +190,33 @@ public class MainActivity extends AppCompatActivity { public void onClickZeigeFragment1(View view) { Button button = (Button) view; - zeigeFragment(fragment1.erstellen(messageBuffer.toString())); + fragment1_ = zeigeFragment(fragment1.erstellen(messageBuffer.toString())); } public void onClickZeigeFragment2(View view) { Button button = (Button) view; - zeigeFragment(fragment2.erstellen("Hier stehen dann die Videos")); + fragment2_ = zeigeFragment(fragment2.erstellen("Hier stehen dann die Videos")); } + @SuppressLint("WrongViewCast") public void onClickZeigeFragment3(View view) { Button button = (Button) view; + fragment3_ = zeigeFragment(fragment3.erstellen(view)); + } + public void onImageViewReady(ImageView imageView) { + fragmentImage = imageView; + detectorService.videoDetector.debugProcessing(null, fragmentImage); //inputImageView } public void onClickEntferneFragment(View view) { entferneFragment(); } - private void zeigeFragment(Fragment fragment) { + private Fragment zeigeFragment(Fragment fragment) { FragmentTransaction ft = getSupportFragmentManager().beginTransaction(); ft.replace(R.id.frame, fragment); ft.commit(); aktuellesFragment = fragment; + return aktuellesFragment; } private void entferneFragment() { if (aktuellesFragment != null) { diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index b6b7421..7298b84 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -94,7 +94,7 @@ android:layout_toRightOf="@id/btnAufnahmen" android:layout_marginLeft="15dp" android:text="Anzeige verbergen" - android:onClick="onClickEntferneFragment"/> + android:onClick="onClickZeigeFragment3"/> Date: Wed, 21 Jun 2023 23:56:25 +0200 Subject: [PATCH 2/3] Version 5 working with Fragment 3 --- .../ueberwachungssystem/Fragments/Fragment3.java | 8 +++----- .../example/ueberwachungssystem/MainActivity.java | 6 ++++-- app/src/main/res/layout/activity_main.xml | 2 +- app/src/main/res/layout/fragment3.xml | 14 ++++++++++++-- 4 files changed, 20 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java b/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java index 7f51c28..a4583b7 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java +++ b/app/src/main/java/com/example/ueberwachungssystem/Fragments/Fragment3.java @@ -36,19 +36,17 @@ public class Fragment3 extends Fragment { View view = inflater.inflate(R.layout.fragment3, container, false); if (onImageViewReadyListener != null) { ImageView ivp = (ImageView) view.findViewById(R.id.Video); - onImageViewReadyListener.onImageViewReady(ivp); + ImageView ivp2 = (ImageView) view.findViewById(R.id.Video2); + onImageViewReadyListener.onImageViewReady(ivp, ivp2); } return view; } public static Fragment3 erstellen(View view) { Fragment3 fragment = new Fragment3(); - Bundle b = new Bundle(); - b.putString(KEY_TEXT, "Test"); - fragment.setArguments(b); return fragment; } public interface OnImageViewReadyListener { - void onImageViewReady(ImageView imageView); + void onImageViewReady(ImageView imageView, ImageView imageView2); } public void onAttach(Context context) { super.onAttach(context); diff --git a/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java b/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java index 6b356a7..dca1dec 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java +++ b/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java @@ -44,6 +44,7 @@ public class MainActivity extends AppCompatActivity implements Fragment3.OnImage private Fragment3 fragment3; private ImageView fragmentImage; + private ImageView fragmentImage2; private DetectorService detectorService = new DetectorService(); int num=0; //Textviews @@ -202,9 +203,10 @@ public class MainActivity extends AppCompatActivity implements Fragment3.OnImage Button button = (Button) view; fragment3_ = zeigeFragment(fragment3.erstellen(view)); } - public void onImageViewReady(ImageView imageView) { + public void onImageViewReady(ImageView imageView, ImageView imageView2) { fragmentImage = imageView; - detectorService.videoDetector.debugProcessing(null, fragmentImage); //inputImageView + fragmentImage2 = imageView2; + detectorService.videoDetector.debugProcessing(fragmentImage, fragmentImage2); //inputImageView } public void onClickEntferneFragment(View view) { diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 7298b84..dc91b6a 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -93,7 +93,7 @@ android:layout_alignBottom="@+id/btnAufnahmen" android:layout_toRightOf="@id/btnAufnahmen" android:layout_marginLeft="15dp" - android:text="Anzeige verbergen" + android:text="Life Vorschau" android:onClick="onClickZeigeFragment3"/> + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_marginTop="40dp" + android:rotation="90"> + + \ No newline at end of file From 741b46e71363aee97d2bfc82cbdfab6c4f96bd44 Mon Sep 17 00:00:00 2001 From: Miguel Siebenhaar Date: Thu, 22 Jun 2023 00:33:35 +0200 Subject: [PATCH 3/3] Version 5.1 working with Fragment 3 --- .../com/example/ueberwachungssystem/MainActivity.java | 4 +++- .../java/com/example/ueberwachungssystem/PopUpClass.java | 4 ++-- app/src/main/res/layout/activity_main.xml | 2 +- app/src/main/res/layout/fragment3.xml | 9 ++++----- app/src/main/res/layout/popup_window.xml | 4 +++- 5 files changed, 13 insertions(+), 10 deletions(-) diff --git a/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java b/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java index dca1dec..a5f586c 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java +++ b/app/src/main/java/com/example/ueberwachungssystem/MainActivity.java @@ -28,6 +28,8 @@ import com.example.ueberwachungssystem.Fragments.Fragment2; import com.example.ueberwachungssystem.Detection.DetectorService; import com.example.ueberwachungssystem.Fragments.Fragment3; +import java.util.OptionalInt; + @ExperimentalGetImage public class MainActivity extends AppCompatActivity implements Fragment3.OnImageViewReadyListener{ //StringBuffer @@ -60,7 +62,7 @@ public class MainActivity extends AppCompatActivity implements Fragment3.OnImage @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - setTitle(this.getClass().getSimpleName()); + setTitle("Supervision"); setContentView(R.layout.activity_main); Auswahl = findViewById(R.id.textAuswahl); Auswahl.setText(auswahltext); diff --git a/app/src/main/java/com/example/ueberwachungssystem/PopUpClass.java b/app/src/main/java/com/example/ueberwachungssystem/PopUpClass.java index 9062729..4b10d5d 100644 --- a/app/src/main/java/com/example/ueberwachungssystem/PopUpClass.java +++ b/app/src/main/java/com/example/ueberwachungssystem/PopUpClass.java @@ -82,11 +82,11 @@ public class PopUpClass { } public void Sensoren(){ - PopUpText.setText("Es können 3 verschiedene Sensoren verwendet werden \n -1. Beschleunigungssensor\n -2. Mikrofon\n -3. Kamera"); + PopUpText.setText("Es können 3 verschiedene Sensoren verwendet werden \n -1. Beschleunigungssensor\n -2. Mikrofon\n -3. Kamera\n Diese können sowohl einzeln als auch alle zusammen verwendet werden"); buttonEdit.setVisibility(View.GONE); } public void Impressum(){ - PopUpText.setText("Die Ueberwachungsapp wurde im Rahmen eines Praktikums der TH-Nürnberg programmiert"); + PopUpText.setText("Die Ueberwachungsapp wurde im Rahmen eines Praktikums der TH-Nürnberg programmiert \n Von: \n -Kohler Bastian\n -Kleinecke Oliver\n -Market Leon\n -Siebenhaar Miguel\n -Wolz Tobias "); buttonEdit.setVisibility(View.GONE); } public void DetectionTotal(int num) { diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index dc91b6a..87c2132 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -93,7 +93,7 @@ android:layout_alignBottom="@+id/btnAufnahmen" android:layout_toRightOf="@id/btnAufnahmen" android:layout_marginLeft="15dp" - android:text="Life Vorschau" + android:text="Live Video" android:onClick="onClickZeigeFragment3"/> - - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/popup_window.xml b/app/src/main/res/layout/popup_window.xml index 167dcde..6d2eb63 100644 --- a/app/src/main/res/layout/popup_window.xml +++ b/app/src/main/res/layout/popup_window.xml @@ -6,7 +6,7 @@ android:paddingLeft="10dp" android:paddingRight="10dp" android:gravity="center" - android:background="#A5ACB2"> + android:background="#010C49">