Beiträge von Thrakbad

    jap, deine Werte liegen alle zwischen 0 und 1, aber ohne expliziten cast auf float wird zuerst das int ergebnis genommen und dann in float umgewandelt. Und das int ergebnis ist 0, weil da einfach auf ne ganze Zahl abgeschnitten wird

    Aslo ich hab keine Erklärung dafür, aber als Anmerkung: normalerweise is das so, dass die Funktion immer in dem Thread ausgeführt wird, von dem sie auch aufgerufen wird. Welche Klasse davon betroffen ist, spielt eigentlich keine Rolle. Allerdings kann es unabhängig davon zu Blockern kommen, weil ja die Resourcen synchronisiert werden müssen und dann muss ein Thread eben warten.

    ne, ich hab eben UK-Englisch eingestellt...also passt schon, dass Alles auf Englisch is. Nur der String für Taschenlampe scheint zu fehlen.

    ne lustige Idee, ich hab 54% Überlebenschance...das ganze Proggi is auf Englisch bei mir, nur der button "Taschenlampe" nicht, just so you know ;)

    Also ich mache in meinen Threads mit Schleifen immer ein while(isRunning) und dann eine Funktion, die isRunning von außen setzt, so kann man die Schleife beenden und der Thread läuft aus und wird dann automatisch beendet, nachdem er fertig ist.

    1) Activity öffnet Dialog und setzt OnClicklistener für dessen "ok" button
    2) Dialog bekommt Eingabe -> Klick auf "ok" triggered OnClickListener
    3) OnClickListener holt Werte ausm dialog und gibt sie an Activity weiter
    4) Activity ändert die Anzeige entsprechend


    Wenn du deine Activity selber OnClickListener implementieren lässt, isses am einfachsten.

    Also das Bild kommt in den assets ordner. Da kannst du auch ne beliebige Ordnerstruktur drin haben. Geladen wird das dann z.B. so (wurzel von dem angegebenen Pfad ist der assets ordner):

    Java
    AssetManager mngr = context.getAssets();
    			InputStream ins = mngr.open("graphics/icons/shield.png");
    			Bitmap bmp = BitmapFactory.decodeStream(ins);


    Mit OpenGL wird dann folgendermaßen eine Textur erstellt, die Parameter für WRAP/REPEAT und die Filter kannste natürlich beliebig ändern

    Also meiner Erfahrung nach skalieren RelativeLayouts am besten. Die ganze Skalierbarkeit ist bei Android durchaus möglich, allerdings muss man sehr viel mit den Layouts rum tricksen und unterschiedliche Typen ineinander schachteln, um das zu erreichen.

    Klar gibts das...ich würde in meinem android Layout einfach 9 Imageviews machen, die clickable sind und dann entsprechend das Bild für "leer", "x" oder "o" enthalten. Ist kinderleicht, dauert ungefähr ne halbe Stunde. Du kannst dazu eigentlich alle möglichen Layouts verwenden, ich würde nen TableLayout nehmen. Geht aber auch mit geschachtelten LinearLayouts oder RelativeLayouts.

    Letzte Frage: Werden die ganzen Funktionen die bei onResume stehen in einer Schleife ausgeführt? Sonst wäre das Problem ja klar, er prüft eben nur einmal den RingMode.


    Ne werden se nicht. Das wird nur einmal audgeführt, wenn die Activity pausiert war und wieder gestartet wird (aber auch beim ersten start). Siehe das Diagramm hier . Wenn du ne Schleife haben willst, solltest du dir in deiner Activity einen Thread starten, der diese typische while(isRunning)... Architektur hat. Das ist aber in deinem Fall absolute Resourcenverschwendung, weil dein simples Proggi ja eindeutig event-basiert arbeitet. Mach die fitPicture() Aufrufe einfach ans Ende jedes Clicklisteners für den Button und dann sollte es gehen.

    Vieles davon gibts ja auch in C#...Threading ist tatsächlich sehr wichtig, allerdings würde ich das dann vom Android Blickwinkel aus lernen. Da gibts nämlich einige Sachen, die dir Threading extrem vereinfachen (AsyncTasks, runOnUIThread()...)

    Ich würd sagen so richtig massive Java-Kenntnisse brauchste gar nicht, um mit Android anzufangen. Wenns dir nur um mobile Entwicklung geht, dann wirste in nem Java Tutorial wahrsch. auch viele unnötige Sachen lernen, wie Swing oder sowas.

    Hmm, da es static ist, dürfte der GC ja nicht zuschlagen, wenn deine Activity verlassen wird...ich würde an deiner Stelle in StartActivity static Methoden getSQLiteDB() und getEinkaufsDB() machen, die dann checken, ob die Variablen null sind und sie evtl. initialisieren. Wenn du dann die Variablen über diese Methoden setzt, ist sichergestellt, dass sie immer initialisiert sind.

    Threads sind halt etwas komplizierter als AsyncTasks. Letztere sind nur nen vereinfachter Wrapper für Threads.
    Zur richtigen Frage: ehrlich gesagt keine Ahnung so richtig. Ich hab bis jetzt noch nie so mit Threads kommuniziert.

    getX/getY geben nicht die Pixel zurück, sondern die Stelle, an der das Event aufgetreten ist. Je nach Präzision des Touchscreens (kann man über getXPrecision/getYPrecision rauskriegen) können das dann halt auch mal keine runden Pixel sein. Für die meisten Anwendungen ist das zwar vernachlässigbar, aber is halt numal so spezifiziert.
    Floats sind als Faustregel im Moment auf den meisten devices ungefähr halb so schnell wie Integer. Allerdings gibt es bei jeder normalen App deutlich bessere Stellen, wo man performance optimieren kann. Über die TouchEvents würd ich mir keine Sorgen machen ;)