Natürlich wird jedesmal wenn ein Touchvorgang ausgeführt wird ein Event gefeuert. das heißt auch wenn du wischst etc. In deinem Fall musst du zwei Typen unterscheiden, MotionEvent.Action_Down und MotionEvent.Action_Up.
denkbar wäre sowas:
Natürlich wird jedesmal wenn ein Touchvorgang ausgeführt wird ein Event gefeuert. das heißt auch wenn du wischst etc. In deinem Fall musst du zwei Typen unterscheiden, MotionEvent.Action_Down und MotionEvent.Action_Up.
denkbar wäre sowas:
Es gibt nur einen onClick und onLongClick listener der beim Klicken die dauer unterscheidet. Willst du wirklich detailliert Daten über die Berührung des Touchscreens, brauchst du, wie du schon erkannt hast, den onTouchListener.
er möchte wissen wo in der Android Button Klasse der Listener gespeichert wird, der in der methode setOnClickListener gesetzt wird.
Und die Antwort lautet: Gar nicht.
Button erbt von TextView bis hin zu View. In der View Klasse wird dann die setOnClickListener implementiert. Die View Klasse wiederum besitzt eine Klassenvariable namens mListenerInfo vom Typ ListenerInfo. Das ist wiederum eine Struktur in der alle gesetzten Listener gespeichert werden.
dann wird das tablet nicht sw600dp entsprechen, sondern weniger.
eine bessere methode zu entscheiden ob tablet oder phone, ist eine xml datei in values-large zu plazieren. In ihr muss ein boolean wie "isTablet" stehn. wenn der wert dann in deiner app vorhanden ist, kannst du davon ausgehen das es ein tablet ist, von dem die app gestartet wurde.
Soweit ich weiß gibts doch diverse standard objekte, also kannst du eine solche 3d engine auch ohne modellierungswerkzeug nutzen
Das ist eben eine sehr komlexe Thematik, dafür brauchst du vermutlich 3D engines wie unity.
http://www.kilobolt.com/game-development-tutorial.html
das sieht recht schön aus
hört auf irgendwelche dinge abzuhacken, aber abhaken können wir das thema gern
Wow dass das einen großen unterschied macht, hätte ich nicht gedacht. Aber das eine rundet wohl anders als das andere
aah jetzt verstehe ich was ihr meint.
Aber keine ahnung wie man die selber implementiert, ich wage stark zu bezweifeln das die panels teil des android sdk sind. Das sind von Samsung selbst eingepflegte UI anpassungen. Vielleicht gibts dafür ja auch noch irgendwo ein SDK.
Ich hab ehrlichgesagt keine ahnung was edge panels sind *gg*
könntest du das kurz erläutern?
dann gib den views halt eine ID?!
wenn man den pc neu aufsetzt, macht man vorher normalerweise eine datensicherung
Dann rundet java wies lustig ist. Gib beim konvertieren von String in double eine feste nachkommastelle an, dann sollte es eigentlich keine probleme mehr geben.
Es war eine NullpointerException die nur auftritt wenn du ein Objekt nicht initialisierst. Entweder hast du uns die falsche Exception kopiert oder der Fehler lag genau dort.
hast du eine feste anzahl von nachkommastellen angegebn?
In der Logcat ausgabe siehst du nicht nur welche Zeile sondern auch noch direkt welches Objekt. Du hast versucht eine Methode getSnapshotContents() auf ein null objekt anzuwenden. Damit kannst du einfach schauen wo die methode aufgerufen wird und hast schon das Objekt was nicht initialisiert ist.
Also merke: immer genau die Fehlermeldungen lesen
als doublewert ist es 0.0199546 und als string 0.0222? oder an welchen stellen treten die unterschiedlichen werte auf?
aufjedenfall ist es nur ein rundungsproblem, warum es aber auftritt müssten wir mal analysieren.
Welchen Datentyp haben diese zahlen?
Diese Apps sind auch was komplett anderes, weil eine offline nutzung entgegen deren zweck zur kommunikation mit anderen wäre. Deine App würde aber eben auch lokal einwandfrei funktionieren. Außerdem ist es etwas seehr weit hergeholt wenn du dich mit marktgrößen wie denen vergleichst
Ich habe doch auch nichts gegen die cloud gesagt, benutz sie, aber zwing sie niemanden auf! Wenn der nutzer es will, kann er es doch nutzen, aber wenn nicht, kann er deine app nicht nutzen. Damit schneidest du dir also ins eigene fleisch.
Nein der 0815 nutzer hat das bestimmt nicht, aber es gibt eine nicht geringe menge von nicht 0815 nutzern, die vielleicht sogar genau wegen dieser fähigkeit deine app wählen würden.
Ich denke sehr viel komplexer wird das nicht. Du kannst es immer lokal speichern und wenn jemand die onlinevariante wählt (sei nun dahingestellt ob deine oder andere cloud), wird die lokale datenbank mit der remote datenbank synchronisiert.
Ich gebe dir vollkommen recht, das die cloudfähigkeit weit hinten in der featureliste kommen sollte. Dann solltest du aber auch eben dieses feature deaktivieren, sonst können nutzer die sich eben nicht registrieren wollen, deine neuen features nicht test.