• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

komunikat "niestety My Application został zatrzymany"

Object Storage Arubacloud
0 głosów
229 wizyt
pytanie zadane 19 sierpnia 2016 w Android, Swift, Symbian przez butlonosek Nowicjusz (200 p.)

Nie wiem dlaczego na telefonie po wybraniu przycisku "Oblicz" wyświetla mi się "niestety My Application został zatrzymany".

Mój telefon to LG G3 S, z systemem Android 4.4.2 z wersją jądra 3.4.0+

Program piszę w programie Android Studio 2.1.2

Zawartość pliku .xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.user.myapplication.Witam"
    android:backgroundTintMode="screen"
    android:backgroundTint="#00b2ff"
    android:background="#ffdd00">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="Podaj godzinę odjazdu autobusu z poprzedniego przystanku"
        android:id="@+id/odja"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_below="@+id/odja"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/linearLayout"
        android:weightSum="1"
        android:layout_gravity="center|left">

        <EditText
            android:layout_width="66dp"
            android:layout_height="wrap_content"
            android:inputType="numberDecimal"
            android:ems="10"
            android:id="@+id/hh" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:text=":"
            android:id="@+id/textView" />

        <EditText
            android:layout_width="66dp"
            android:layout_height="wrap_content"
            android:inputType="numberDecimal"
            android:ems="10"
            android:id="@+id/mm" />
    </LinearLayout>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:text="lub podaj minuty, które zostały do odjazdu z niego"
        android:id="@+id/textView2"
        android:layout_below="@+id/linearLayout"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="numberDecimal"
        android:ems="10"
        android:id="@+id/odjazd"
        android:layout_below="@+id/textView2"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Oblicz"
        android:id="@+id/oblicz"
        android:layout_gravity="center"
        android:layout_below="@+id/odjazd"
        android:layout_centerHorizontal="true"
        android:textSize="20dp"
        android:onClick="przelicz"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceLarge"
        android:id="@+id/wynik"
        android:layout_below="@+id/oblicz"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

</RelativeLayout>

Zawartość pliku .java:

package com.example.user.myapplication;

import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;


public class Witam extends AppCompatActivity {


    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_witam);
    }

    public void przelicz(View view) {
        EditText hhO=(EditText)findViewById(R.id.hh);
        String hhS=hhO.getText().toString();
        int hh=Integer.parseInt(hhS);
        EditText mmO=(EditText)findViewById(R.id.mm);
        String mmS=mmO.getText().toString();
        int mm=Integer.parseInt(mmS);
        EditText odjazdO=(EditText)findViewById(R.id.odjazd);
        String odjazdS=odjazdO.getText().toString();
        int odjazd=Integer.parseInt(odjazdS);
        TextView wynikO=(TextView)findViewById(R.id.wynik);
        int przesiadka=hh+mm;
        wynikO.setText(przesiadka);
    }
}

3 odpowiedzi

0 głosów
odpowiedź 20 sierpnia 2016 przez KubenQPL Maniak (62,820 p.)
edycja 20 sierpnia 2016 przez KubenQPL

Pokaż co logcat wypisuje (najlepiej sam komunikat crasha). Nie powinieneś w funkcji onclick deklarować i definiować zmiennych kontrolek. Kontrolki powinieneś zadeklarować jako zmienne globalne, a zdefiniować w onCreate.

 

EDIT: TextView.setText() przyjmuje String a ty mu dajesz int, zrób to tak wynik0.setText(przesiadka+""); Dodajemy ten cudzysłów żeby przekonwertować na string.

0 głosów
odpowiedź 20 sierpnia 2016 przez butlonosek Nowicjusz (200 p.)

Logcat:
02-02 18:52:57.132: VERBOSE/ProtocolEngine(24): DownloadRate 104166 bytes per sec. Downloaded Bytes 5643/34714
08-03 13:31:16.196: DEBUG/dalvikvm(2227): HeapWorker thread shutting down
08-03 13:31:16.756: INFO/dalvikvm(2234): Debugger is active
08-03 16:26:45.965: WARN/ActivityManager(564): Launch timeout has expired, giving up wake lock!
08-04 16:19:11.166: ERROR/AndroidRuntime(4687): Uncaught handler: thread main exiting due to uncaught exception
08-04 16:24:11.166: ASSERT/Assertion(4687): Expected true but was false

Zmieniłem kod pliku .java następująco:

package com.example.user.myapplication;

import android.content.Context;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;


public class Witam extends AppCompatActivity {
    EditText hhO;
    EditText mmO;
    EditText odjazdO;
    TextView wynikO;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_witam);
        hhO=(EditText)findViewById(R.id.hh);
        mmO=(EditText)findViewById(R.id.mm);
        odjazdO=(EditText)findViewById(R.id.odjazd);
        wynikO=(TextView)findViewById(R.id.wynik);
    }

    public void przelicz(View view) {
        String hhS=hhO.getText().toString();
        int hh=Integer.parseInt(hhS);
        String mmS=mmO.getText().toString();
        int mm=Integer.parseInt(mmS);
        String odjazdS=odjazdO.getText().toString();
        int odjazd=Integer.parseInt(odjazdS);
        int przesiadka=hh+mm;
        wynikO.setText(przesiadka);
    }
}

komentarz 20 sierpnia 2016 przez KubenQPL Maniak (62,820 p.)
Kiedy dodajesz treść do swojego pytania poprostu je zedytuj, lub dodaj w komentarzu.
komentarz 20 sierpnia 2016 przez KubenQPL Maniak (62,820 p.)
Sprawdź zedytowaną moją odpowiedź.
0 głosów
odpowiedź 20 sierpnia 2016 przez butlonosek Nowicjusz (200 p.)
W ogóle to nie działa mi SDK Manager. Kiedy kliknę "Launch Standalone SDK Manager" to piszę:

"Wystąpił problem z aplikacją find_java32.exe i zostanie ona zamknięta. Przepraszamy za kłopoty."

"AppName: find_java32.exe     AppVer: 0.0.0.0     ModName: msvcrt.dll
ModVer: 7.0.2600.5512     Offset: 000378c0"

Podobne pytania

0 głosów
0 odpowiedzi 295 wizyt
0 głosów
1 odpowiedź 226 wizyt
0 głosów
2 odpowiedzi 700 wizyt
pytanie zadane 4 stycznia 2018 w Android, Swift, Symbian przez Kubs Mądrala (5,190 p.)

92,556 zapytań

141,404 odpowiedzi

319,563 komentarzy

61,942 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...