HILFE: App angehalten sobald man auf den Button klickt

  • 16 Antworten
  • Neuester Beitrag
Diskutiere HILFE: App angehalten sobald man auf den Button klickt im Android App Entwicklung im Bereich Betriebssysteme & Apps.
F

Ferlot06

Neues Mitglied
Hallo alle zusammen,
ich bin kompletter Anfänger im programmieren und entschuldige mich schonmal vorher für eventuelle Fehler in der Terminologie😬
Ich brauche jedoch schnell Hilfe, da ich die App eigentlich heute fertig haben möchte. Ich habe mit Android studio meine erste App programmiert. Eigentlich ist es halt eine Activity und durch einen Button soll man zu Activity 2 kommen. Wenn ich sie auf mein Handy spiele wird das Layout der ersten Activity auch angezeit genauso wie der Button, aber wenn ich auf den Button klicke, schließt sich die App und es steht dort :versuch1(So heißt mein Projekt) wurde angehalten. Ich bin unheimlich dankbar für jede idee oder Hilfe. Ich habe schon viel recherchiert und auch geändert, aber das Problem bleibt☹

Liebe Grüße und vielen dank schon im Vorraus!!!

Hier meine MainActivity:

package com.example.versuch1;

import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;

import androidx.appcompat.app.AppCompatActivity;

public class MainActivity extends AppCompatActivity {

@override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

Button button = findViewById(R.id.button1);
button.setOnClickListener(view -> openActivity2());

}
public void openActivity2(){
Intent intent = new Intent(this,Activity2.class);
startActivity(intent);
}
}
 
Zuletzt bearbeitet:
swa00

swa00

Moderator
Teammitglied
Zuletzt bearbeitet:
F

Ferlot06

Neues Mitglied
Vielen Dank für die frühe Antwort! Also ich habe eigentlich ziemlich genau das hier nachgebaut:
. Und es wird mir gar kein Fehler angezeigt. Errors finde ich auch keine...Wie kann ich denn den Errorlog aufrufen oder einsehen?
 
Zuletzt bearbeitet:
swa00

swa00

Moderator
Teammitglied
a) das ist nicht der gesamte Code
b) den error log findest du unter Logview -> Errors
Es gibt IMMER einen Errorlog !!

Also das geht gar nicht :-(
button.setOnClickListener(view -> openActivity2());

Also ich habe eigentlich ziemlich genau das hier nachgebaut:
Ziemlich ist nicht GENAU !!

Und wenn du mal genau den Source in deinem verlinkten Video anschaust,
hast du den kompletten Clicklistener-Response weg gelassen - warum ?

Also schreib das Ding mal so, wie angeben , und nicht nur die Hälfte :)
 
Zuletzt bearbeitet:
F

Ferlot06

Neues Mitglied
Danke ich hab es jetzt so gemacht, hat auch alles super geklappt( Danke nochmal) aber dann wollte ich den Hintergrund der zweiten Activity ändern in ein Foto(1,07 MB) und dann wurde die App wieder angehalten. Liegt es an dem Foto und wie kann ich das beheben?
 
swa00

swa00

Moderator
Teammitglied
aber dann wollte ich den Hintergrund der zweiten Activity ändern in ein Foto(1,07 MB) und dann wurde die App wieder angehalten. Liegt es an dem Foto und wie kann ich das beheben?
Ich wiederhole mich eigentlich recht ungern :)
Wenn eine App abstürzt, benötigen wir den Errorlog, damit wir auch die Ursache für Dich ergründen können.

Du kannst nicht jedes X beliebige Foto nehmen , da die Skalierung (nicht Dateigröße) DPI abhängig ist und somit den internen Speicher
überlaufen lässt.
 
Zuletzt bearbeitet:
J

jogimuc

Stammgast
Hallo
Ja ein ErrorLog und der Code der zweiten Activity wäre wichtig.

An einen Speicherüberlauf glaube ich jetzt mal nicht bei einer 1.07 MB großen Datei.

Frage hast du überhaupt die zweite Activity im Manifest eingetragen?

Ohne Code und vorallen ErrorLog kommen wir hier nicht weiter.
Wollte ich auch nochmal gesagt haben.

Wichtig ist auch für uns zuwissen wo oder wie du das Bild eingebunden hast.
Im layout Xml oder im Java Code.
Also ohne Code kann es hier keine echte Hilfe geben.
 
Zuletzt bearbeitet:
swa00

swa00

Moderator
Teammitglied
Moin Jörg,

An einen Speicherüberlauf glaube ich jetzt mal nicht bei einer 1.07 MB großen Datei.
Das ist nicht ganz richtig - je nach Dimension, AlphaKanäle und Kompression sagen die 1.07 MB Dateigröße nichts über
die verwendete DPI und das Target aus .
Das Bitmap kann sehrwohl beim Fitting über die zulässige Speichergröße beim Rendering kommen.
 
Zuletzt bearbeitet:
J

jogimuc

Stammgast
@swa00 Da magst du recht haben.
Das wird er nicht gemacht haben. Ein Bitmap erstellen. Wissen wir arber nicht.
Wir wissen auch nicht wo er das Bild abgelegt hat. Da wir weder Code noch xml haben
Beitrag automatisch zusammengefügt:

Er ist am Zug sonst sinnlos
 
Zuletzt bearbeitet:
F

Ferlot06

Neues Mitglied
Der ErrorLog:

08-06 11:53:12.492 16607-16607/com.example.versuch1 E/dalvikvm: Could not find class 'androidx.core.view.ViewCompat$2', referenced from method androidx.core.view.ViewCompat.addOnUnhandledKeyEventListener
08-06 11:53:12.492 16607-16607/com.example.versuch1 E/dalvikvm: Could not find class 'android.view.WindowInsets', referenced from method androidx.core.view.ViewCompat.dispatchApplyWindowInsets
08-06 11:53:12.507 16607-16607/com.example.versuch1 E/dalvikvm: Could not find class 'android.view.WindowInsets', referenced from method androidx.core.view.ViewCompat.onApplyWindowInsets
08-06 11:53:12.515 16607-16607/com.example.versuch1 E/dalvikvm: Could not find class 'android.view.View$OnUnhandledKeyEventListener', referenced from method androidx.core.view.ViewCompat.removeOnUnhandledKeyEventListener
08-06 11:53:12.523 16607-16607/com.example.happybirthday E/dalvikvm: Could not find class 'androidx.core.view.ViewCompat$1', referenced from method androidx.core.view.ViewCompat.setOnApplyWindowInsetsListener
08-06 11:53:12.554 16607-16607/com.example.versuch1 E/dalvikvm: Could not find class 'android.graphics.drawable.RippleDrawable', referenced from method androidx.appcompat.widget.AppCompatImageHelper.hasOverlappingRendering
08-06 11:53:12.609 16607-16607/com.example.versuch1 E/dalvikvm: Could not find class 'android.view.textclassifier.TextClassificationManager', referenced from method androidx.appcompat.widget.AppCompatTextClassifierHelper.getTextClassifier

Der Code der zweiten Activity:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".Activity2"
android:background="@drawable/img_6337">
</RelativeLayout>


Manifest:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.versuch1">

<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@Style/AppTheme">
<activity android:name=".Activity2"></activity>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>

</manifest>

habt ihr dazu eine Idee? Tausend dank jetzt schonmal für die Kommentare!
Beitrag automatisch zusammengefügt:

Ich habe übrigens gerade eine Datei die weniger Speicherplatz benötigt ausprobiert und das hat auch nicht funktioniert. Das heißt doch dass es daran nicht liegt, oder?
LG
 
Zuletzt bearbeitet:
J

jogimuc

Stammgast
Hallo wo in welchen Drawable Ordner hast du denn das Bild die Datei abgelegt?

Entweder in dem gemeinsamen Haupt Ordner oder für jede Auflösung DPI eine zugeschnittene Datei.
Erstelle dir die richtige Dadei für alle Auflösungen(DPI) mit "Draw 9 patch".

So wie es aussieht wird die Resourse nicht gefunden.


Drawables overview | Android Developers
Beitrag automatisch zusammengefügt:

hintergrundbild
 
Zuletzt bearbeitet:
F

Ferlot06

Neues Mitglied
Hallo und vielen Dank schonmal! Nun frage ich mich noch warum denn mein erstes Foto als background funktioniert? Bis jetzt hatte ich es im Haupt Ordner.
 
J

jogimuc

Stammgast
Von welchen ersten Bild sprechen wir?
Bitte etwas genauer.
 
F

Ferlot06

Neues Mitglied
Ich hatte für meine MainAplication auch ein foto als hintergrund eingestellt und dieses wird mir auch problemlos angezeigt, wenn ich es auf meinem handy teste. Ich habe es auch ganz einfach bei drawable eingefügt und dann so eingebunden: android:background="@drawable/img_6334"
Und nun hat es mich gewundert, warum es bei dem zweiten foto in meiner application_2 eben nicht so funktioniert hat: android:background="@drawable/img_6337"
Beitrag automatisch zusammengefügt:

Wie gesagt ich bin kompletter Anfänger also verzeihe mir meine dummen Fragen: Was genau würdest du jetzt machen? Ich verstehe immer noch nicht ganz warum die resource nicht erkannt wird? 😬
 
Zuletzt bearbeitet:
J

jogimuc

Stammgast
Was ist das für ein Bild die gleiche Auflösung DPI und auch das gleiche Dateiformat. jpg, png....
Wie sieht das Layout der Main aus. Welche Skalierung hast du da?...

Hast du mal versucht das erste Bild von der Main in der zweiten Activity zu laden?
 
F

Ferlot06

Neues Mitglied
Ich habs jetzt mal versuch und wenn ich das erste Bild in der zweiten Activity lade klappt es auch... Ist aber eigentlich gleiches Format, gleiche auflösung etc. Nur hat das erste Bild halt 923,12 kB und das zweite eben 1,07 MB
Beitrag automatisch zusammengefügt:

Aber komischerweise hatte ich eben schonmal versucht ein Bild mit 755 kB in der zweiten Activity zu laden und das hat nicht funktioniert...🧐🤨
 
Zuletzt bearbeitet:
J

jogimuc

Stammgast
wass passirt wenn du das zweite in der main lädst.

das layout der main hast du auch noch nicht gepostet. mich interessiert ob du da eine Skalierung machst.

zeige dein layout der main
Beitrag automatisch zusammengefügt:

wie gross ist das Bild Auflösung Pixel und DPI. welches Display hat dein Handy Auflösung DPI?

Frage wo kommen die Bilder her? Wie mit was hast du die Bilder erestellt, berarbeitet? Welches Format haben die den überhaupt?

hier ein Link der hoffentlich etwas Licht ins dunkele bringt.
Bilder in Android Studio importieren - Big App
Beitrag automatisch zusammengefügt:

packe das bild doch mal in den Ordner "nodpi", und entfernne wenn vorhanden die anderen Datein.

Support different pixel densities | Android Developers


LDPI: Portrait: 200 X 320px
MDPI: Portrait: 320 X 480px
HDPI: Portrait: 480 X 800px
XHDPI: Portrait: 720 X 1280px
XXHDPI: Portrait: 960 X 1600px
XXXHDPI: Portrait: 1440 x 2560px
 
Zuletzt bearbeitet:
Ähnliche Themen - HILFE: App angehalten sobald man auf den Button klickt Antworten Datum
6
17
6