| |||||||
Das Thema "Anmelde Button mit Leben erfüllen" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Junior Mitglied Registriert seit: 22.06.2011
Beiträge: 34
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
| stehe momentan auf dem schlauch. ich versuche einem einfachen anmelde button, eine onclick funktion zuzuweisen. aber mein progrämmchen stürzt immer wieder ab. Fehlermeldung: "The application abc (process fcp.main) has stopped" aufbau ist ganz einfach: habe mit eclipse eine gui gebastelt, eingabefeld benutzername, eingabefeld passwort und ein anmelde button. die gui an sich funktioniert soweit schon mal. ist ja gott sei dank mit dem gui builder recht praktisch. bei der onclick funktion streikt aber mein programm. klammere ich die innere klasse aus, sehe ich meine gui, nur halt leider ohne funktion. sobald es wie unten steht, geht es schon wieder nicht. ich denke ich habe alles nach anleitung gemacht. (benutzer ist eine selbst erstellte Klasse) hier mal der code der mainactivity: Code: package fcp.main;
import fcp.Logic.Benutzer;
import fcp.Logic.FileCopy;
import fcp.Logic.FCP_System;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final Benutzer test = new Benutzer();
test.fahrerNr = "123";
test.passwort = "456";
final Button anmelden = (Button) findViewById(R.id.buttonAnmelden);
anmelden.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// bla bla bla
}
});
setContentView(R.layout.main);
}
} Code: <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/Fahrernr"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/textfieldUsername"
android:layout_width="600dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/Passwort"
android:textAppearance="?android:attr/textAppearanceLarge" />
<EditText
android:id="@+id/textfieldPassword"
android:layout_width="600dp"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:inputType="textPassword" >
<requestFocus />
</EditText>
<Button
android:id="@+id/buttonAnmelden"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/Anmelden" />
<Button
android:id="@+id/buttonBeenden"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/Beenden" />
</LinearLayout> Geändert von ForenDaddy (01.11.2011 um 16:09 Uhr) |
| | |
| | #2 (permalink) |
| Junior Mitglied Registriert seit: 22.06.2011
Beiträge: 34
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
jetzt habe ich es auch noch mal mit android: onclick versucht. das funktioniert ja genauso wenig. irgendwie funktionieren viele der grundlagen beispiele überhaupt nicht. und das adt plugin ist nicht wirklich eine hilfe. ich habe jetzt meinem anmelde button diese zeile geschenkt: Code: android:onclick="login" Code: public void login(View view) {
switch (view.getId()) {
case R.id.buttonAnmelden:
// test
break;
}
} error: "no resource identifier found for attribute 'onclick' in package 'android'" ich frage mich sowieso, wie er die methode login findet, wenn ich nicht die klasse bzw. activity angebe in der sie steht. ein clean hat auch nichts gebracht. Geändert von ForenDaddy (01.11.2011 um 16:15 Uhr) |
| | |
| | #3 (permalink) |
| Neuer Benutzer Registriert seit: 26.04.2011
Beiträge: 14
Abgegebene Danke: 0
Erhielt 2 Danke für 2 Beiträge
|
Ruf mal zuerst setContentView(R.layout.main) auf, und dann erst den setOnClickListener für den Button.
|
| | |
| Folgender Benutzer bedankt sich bei Nebukad für diesen Beitrag: | ForenDaddy (02.11.2011) |
| | #4 (permalink) |
| Junior Mitglied Registriert seit: 22.06.2011
Beiträge: 34
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
oh mann, das wars. ich nehme mal an, er erzeugt die main.xml zur laufzeit. und wenn ich dem button "anmelden" vor erzeugung eine funktion zuweise, greif android natürlich ins leere. kann mir aber trotzdem jemand verraten, warum onlick dann nicht geht? finde es ist eigentlich eine sehr schöne funktion, die mir das innere klassen gerangel ersparen könnte. |
| | |
| | #5 (permalink) |
| Android Guru Registriert seit: 09.05.2009
Beiträge: 2.389
Abgegebene Danke: 36
Erhielt 307 Danke für 289 Beiträge
|
ist genau das gleiche ruf einfach als erste setContentView auf und alles funktioniert
__________________ App Entwicklung Latest apps: Media Streamer BETA | DailyCash | MoneyManager ( PRO | HD ) |
| | |
| | #6 (permalink) |
| Fortgeschrittenes Mitglied Modell: HTC Sensation Registriert seit: 31.08.2011
Beiträge: 390
Abgegebene Danke: 25
Erhielt 59 Danke für 57 Beiträge
|
dein onClick geht nicht, weil dein button vermutlich null ist. sowas findet man beim debuggen eigentlich schnell raus ;-) wie die anderen schon gesagt haben, entweder setContentView ganz oben benutzen oder halt zuerst inflaten, dann müßte es auch gehen ... |
| | |
| | #7 (permalink) |
| Junior Mitglied Registriert seit: 22.06.2011
Beiträge: 34
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
debuggen geht nicht, weil onclick fehlerhaft ist. hier noch mal der button vollständig aus der "main.xml". Code: <Button
android:id="@+id/buttonAnmelden"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="@string/Anmelden"
android:onclick="login" /> aber da android das einem nicht sagt, tappt man da schön im dunkeln. insofern, problem gelöst. |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Welche Funktion erfüllen die bronzefarbenen Kontakte des Unpacked-Smartphones? | ses | Galaxy Nexus Forum | 37 | 22.10.2011 16:27 |
| Kann man mit dem Branding leben? | ara | HTC Sensation / Sensation XE Forum | 17 | 06.07.2011 12:32 |
| Phone Portal: Welche Anmelde Daten? | horst37 | Motorola Defy Forum | 1 | 05.07.2011 19:30 |
| Ein neues Android Leben! | Mobile surfer | Root / Hacking / Modding für T-Mobile G1 | 13 | 06.12.2010 23:29 |
| Anwendung 'am Leben halten'? | Rapax | Motorola Milestone Forum | 4 | 08.08.2010 13:30 |