Die Buttons sind vertauscht, obwohl die XML richtig ist und wenig verändert hab

  • Antworten:12
Daniel
  • Forum-Beiträge: 99

19.04.2014, 22:51:52 via Website

Moin,

Problem über Problem, ich hab schon im Internet gesucht und finde dazu Garnichts(bzw. nicht mit meinen Suchbegriffen).

Ich hab im XML-Layout bissl die Position der Buttons umgeschoben sonst nichts, und jetzt wird bei public void onclick einfach mal die Methode der anderen Buttons ausgeführt, obwohl es davor immer klappte und trotzdem immer noch richtig zugeordnet ist.

Bitte um Hilfe. Danke ! :)

Antworten
Daniel
  • Forum-Beiträge: 99

19.04.2014, 22:54:01 via Website

Ich verwende das Relative-Layout!

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

19.04.2014, 23:14:50 via Website

Dann bitte mal XML und code posten. ggf auch nen Screenshot

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Daniel
  • Forum-Beiträge: 99

19.04.2014, 23:22:38 via Website

<Button
    android:id="@+id/button2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button1"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="40dp"
    android:onClick="onclick"
    android:text="Share via WhatsApp" />

<Button
    android:id="@+id/button3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button2"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="55dp"
    android:text="new round" />

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="62dp"
    android:onClick="onclick"
    android:text="exit" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button3"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="62dp"
    android:text="TextView"
    android:textSize="60sp" />

<TextView
    android:id="@+id/textView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="40dp"
    android:text="Score:"
    android:textSize="30sp" />

image

— geändert am 19.04.2014, 23:24:26

Antworten
Daniel
  • Forum-Beiträge: 99

19.04.2014, 23:25:54 via Website

komischerweise schaff ich den Header nicht reinzukopieren(wahrscheinlich wegen HTML-XML) .... hier nochma extra : "<"Fragezeichen"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:orientation="vertical" tools:context=".GameOver" >"

Antworten
Daniel
  • Forum-Beiträge: 99

20.04.2014, 01:07:44 via App

Stimmt ! Ich,Depp,hab vergessen, das onclick attribut dranzuschreiben beim new round button. und ja es ist so gewollt, denn ich verwende bei onclick ein switch(v.getId()) case ^^

Antworten
Daniel
  • Forum-Beiträge: 99

20.04.2014, 13:56:20 via Website

Source vom onclick

public void onclick(View v)
{
    switch(v.getId()){
    case R.id.button1:
        finish();
        break;
    case R.id.button2:
        String text = "Spiele die topaktuelle ProGamingApp \"Remember that!\" Dein Kumpel hat " + points + " Punkte erreicht, du Lappen!";
        Intent intent = new Intent(Intent.ACTION_SEND)
                        .setType("text/plain")
                        .setPackage("com.whatsapp")
                        .putExtra(Intent.EXTRA_TEXT, text);
        startActivity(intent);
        break;
    case R.id.button3:
        Intent intent2 = new Intent(GameOver.this, MainActivity.class);
        startActivity(intent2);
        finish();
        break;

}
}

Antworten
Daniel
  • Forum-Beiträge: 99

20.04.2014, 13:57:10 via Website

Komischerweise wenn ich auf Exit drücke , sharet er auf WhatsApp :D :D :D und die anderen Tasten reagieren nicht :D

Antworten
Daniel
  • Forum-Beiträge: 99

20.04.2014, 14:00:22 via Website

So hab jetzt eben nachm Source-Pasten das abgeändert, dass alle Buttons onClicked sind im XML-Code, aber wo ist die Logik, dass er wenns bei onClick() mit R.id.xxx belegt ist, aber nicht beim XML-Code mit dem onclick.-Attribut, dass er einfach die Aufgaben der anderen übernimmt? o.O

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

20.04.2014, 15:13:10 via Website

OnClicks über die XML zu verbinden ist eine schlechte Idee. Nimm lieber einen OnClick listener im Code

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Daniel
  • Forum-Beiträge: 99

20.04.2014, 16:37:59 via App

wieso ? wird doch in der android referenz empfohlen ^^ ja man kann dann die onclicklistener immer umfunktionieren lassen, oder weswegen?^^

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

20.04.2014, 17:12:25 via Website

Na ja du kannst beides machen. Aber besser ist es mit onClick listener.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten