Beiträge von killphil75

    Hallo also wenn du Dich schon ein wenig mit Programmierung auskennst, dann kannst du sicherlich komplett auf ein Buch verzichten
    und lieber die Beispiele unter http://developer.android.com/g…damentals/activities.html nutzen.


    Bzw ein paar Grundlagentutorials im Netz lesen.



    Mobile Anwendungen mit Android habe ich mir auch gekauft, ist in meinen Augen kein wirklich gutes Buch geworden - die haben das halbe SDK abgedruckt aber nicht wirklich gut erklärt.


    Vom selben Autor gibt es ein Videotraining was wesentlich besser ist.


    http://www.amazon.de/Apps-entw…TF8&qid=1328736256&sr=8-1


    [amazon]3836218151[/amazon]


    Das folgende Buch habe ich auch, hier ist das Problem das von vorne bis hinten nur eine App programmiert wird und man sicherlich unterwegs beim lesen der Lektüre gerne seine eigenen Probleme behandelt sehen will. Obendrein ist nur Android V 2 abgedeckt.


    http://www.amazon.de/Android-G…TF8&qid=1328736298&sr=1-1


    [amazon]3898646777[/amazon]



    Das Buch was mir am meisten bei grundsätzlichen Verständnisfragen zum Thema Android geholfen hat ist:


    http://www.amazon.de/Android-A…TF8&qid=1328736298&sr=1-2


    [amazon]3836216973[/amazon]




    In dem Android2 Buch wo die Anwendung Amando programmiert wird, dreht sich alles um das Thema Standort/Lokalisierung ect. - Eine kostenlose Version des Buches (1Auflage ist im Netz erhältlich -> http://dpunkt.de/buecher/3436.html Da kannst du ja mal reinschauen.


    Zitat

    Was nimmt eigentlich für ein Entwicklungsumgebung?


    Android-SDK?

    Als IDE ist Eclipse sehr gebräuchlich (NETBEANS gibt es auch), auf den Android Developer Seiten gibt es gute Anleitungen zur Installationen.
    Das SDK (ebenfalls auf diesen Seiten zu finden) bringt einen Emulator zum Testen mit. Und das ADT bindet das SDK super in Eclipse ein.



    UweApps: :) -> Eclipse ist auch manchmal zickig - mit den 64 Bit Versionen gibt es ab und zu Probleme mit dem ADT, da gibt es im Netz aber auch jede Menge Anleitungen/work arounds

    Zitat

    Nutzt das gesamte TableLayout eine XML Datei als Gerüst oder werden nur
    sol viele Spalten angezeigt wie in der TableRow definiert ??? :-!

    Das kannst du halten wie du möchtest, entweder XML oder halt dynamisch im Programmverlauf.
    Natürlich kannst du vorher alle Zeilen vordefinieren, was aber nicht besonders effektiv ist. Stell Dir vor es werden 11 oder mehr Spieler.


    Das Problem an deinem Screenshot, ich weiss noch immer nicht wo du hin willst.
    Die Punkte Button oben, wie willst du wissen welcher Spiele wieviele Punkte bekommt - wie realisierst du die Auswahl/Zuteilung ???

    Zitat

    - Mir setContentView füge ich die Aktualisierung zu Ende.

    Brauchst du nur einmal am Anfang zum Init. Neue Views einfach nur per addView.

    Hmm Glaskugel, Glaskugel --


    wenn andere Sachen (Textview, Canvas ect) aus deinem Aufrufskonstrukt veränderst werden, dann funktioniert das ??? (also nicht der ProgressDialog)


    bist du im richtigen Context unterwegs ??? (zur Not mal per getApplicationContext() ganz hart )


    Und noch ein ganz abwegiger Ansatz, hast du im Theme an deinen Dialog EInstellungen was verändert ???
    Hat er eventl ein Layout Problem???


    Läuft irgendwo eine Routine durch wo noch ein unbedachtes Dismiss steht ????


    Fragen über Fragen


    so ganze ohne Code wird es wohl ein Rätsel bleiben.

    Also in 1) wird nur das Tablelayout gesucht und eine Instanz gespeichert

    Code
    TableLayout tl = (TableLayout) findViewById(R.id.tableLayout1);


    Und dann füge ich einen Header hinzu, was im Grunde ja auch nur eine Tabellenzeile ist.


    der 2te Code Teil ist ja fast identisch, den habe ich nur mal ausgeklammert, weil das bei mir der Teil ist, der in einer Schleife läuft und mit Daten befüllt wird.


    Code
    for(int i=0;i<tabelle.size();i++) {
              		TabEintrag data = tabelle.get(i);		// Daten aus Tabelle holen


    Code
    col1.setText( String.valueOf(data.getId()));


    wobei data einfach eine Datenstruktur/Klasse ist - könnte ja auch ein Array sein, was auch immer ...



    Das setzen des Grundlayout hab ich weggelassen das ist ja Standardkost.


    Code
    public void onCreate(Bundle savedInstanceState) {
       
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.act_tabelle);

    Hmmm


    den Quellcode einer Seite ist so eine Sache, wenn du einen HTTP Request an einen Browser sendest bekommst du immer etwas zurück,
    in den meisten Fällen eine fertige HTML Seite bzw das was Dir der Anbieter zurückliefert.
    Falls du einen Request an eine .php Seite sendest wirst du auch hier nur den output der Php Routinen zurückbekommen und niemals den Quelltext.
    So viel zur Vorrede.


    Hier ein Beispiel für einen Request:


    http://w3mentor.com/learn/java…ng-httpclient-in-android/



    So jetzt noch der erhobene Zeigefinger:


    Du musst jetzt aufpassen, was du mit den Daten der Seite machen willst. (Ich vermute mal du willst die Seite Parsen und bestimmte Teile der Seite verwenden)


    Wenn es deine Seite ist, welche du einfach abfragst und in deine App einbindest ist alles ok.
    Wenn es sich um Angebote Dritter handelt musst du vorher die rechtliche Seite abklären, letztendlich ist es strafrechtlich relevant wenn du fremde Inhalte bei Dir einbindest und als deinen Content ausgibst.


    -> Wenn du Daten von Dritten benutzen möchtest bzw diese das auch anbieten, gibt es in den meisten Fehlen standardisierte Schnittstellen (xml , soap ect)





    Wenn du deine App für viele Plattformen anbieten willst, dann solltest du alle Geräte ab 2.1 unterstützen damit deckst du dann 94 Prozent der Android User ab.


    http://developer.android.com/r…rd/platform-versions.html




    PS: wichtig ist das du in deinem Manifest deiner App auch android.permission.INTERNET
    setzt sonst blockt der Emulator/Phone

    Meine Erste Frage ist jetzt:
    wie übergibt man werte z.B. eine weckzeit von einer Activity an eine andere?


    Um deiner Activity Daten mit zu geben nutz du putExtra

    Intent.putExtra(String Name,String Value)


    Code
    Intent intent=new Intent(IntentsDemo2.this,Activity2.class);    
    intent.putExtra("Startname", "wert1");



    in deiner Activity, welche die Daten liest nutz du dann...


    Code
    Intent sender=getIntent();
    String extraData=sender.getExtras().getString("Startname");




    Wegen der Speicherung des Datums, kannst du dir ja mal Datetime anschauen.
    Wobei für einen Wecker brauchst du eigentlich ja nur die Uhrzeit...

    Also die Freunde auf Stackoverflow, raten zum eigenen Zusammenbauen des Pfades



    Code
    String packageName = context.getPackageName();
    File externalPath = Environment.getExternalStorageDirectory();
    File appFiles = new File(externalPath.getAbsolutePath() +
                             "/Android/data/" + packageName + "/files");

    Bei mir schaut es so aus



    und nun die Daten in einer Schleife baue ich wie folgt zusammen




    in der xml


    Wie gesagt, es funktioniert ja alles :)



    In der Klasse habe ich alle Sachen (im Grunde sind es ja nur OnClicklistener zusammengefasst, wichtig ist nur, das der jeweilige View übergeben wird, damit dir R.id Verknüpfungen gefunden werden



    Code
    public static void generiereNavigation(final Context ctx, View v ){
    				
    		final Button but_home = (Button) v.findViewById(R.id.nav_home);
    		final Button but_news = (Button) v.findViewById(R.id.nav_news);
        	....


    so rufe ich das Ganze in einer Activity auf


    Code
    RBLNavigation.generiereNavigation(RBLMainActivity.this, getWindow().getDecorView());


    un meine Layouts sehen so aus. Per include Binde ich das Layout meiner Toolbar ein


    Ja hab jetzt den ganzen Navigationsquatsch in eine Klasse ausgelagert und belasse aber momentan die Steuerung per Activity Switch,
    ich hatte mal ein wenig im Netz gelesen eventl wg View_Switching, aber dann hat man eine MonsterKlasse die nur unnötig den Speicher zuballert,
    man muss sich selber um das komplette Umschalten kümmern.


    Mit Tabs habe ich jetzt noch nicht so viel gemacht, aber meine Buttonleiste macht ja im Grunde das selbe.
    Mir ging es hauptsächlich darum, das ich die NavKlasse in jede Activity einhängen kann.


    Bislang hatte ich auch einige Funktinalität (passend zu jeweiligen Activity) in Menüs ausgelagert, nun empfiehlt ja aber Google seit Anfang Januar in Ihrem DevBlog in Zukunft auf Menünutzung zu verzichten, da zukünftige Geräte (siehe Tablets) keine Hardware Menütaste mehr haben, sondern alles nur noch per Softbar dargestellt wird.


    Da ich jetzt selber erleben musste, dass einige Tabletnutzer gar nicht mitbekommen wenn diese "Menübutton" unten eingeblendet werden und somit den "Aktualisieren-Button" nicht gefunden haben, bin ich jetzt auf "Actionbar" umgestiegen, da bekommt man aber halt keine Komplette Navigation unter bzw. ist die auch nicht dafür ausgelegt -> daher die Toolbar.


    So sieht das ganze aus, farblich habe ich es noch nicht angepasst daher noch (schwarz/grau)



    [Blockierte Grafik: http://www.webos-entwickler.de/android/img_neu/sc_tabelle_neu.png]

    Hallo ich habe eine Frage bzw hat vielleicht jmd so etwas schon mal implementiert.


    Bislang hatte ich in meiner App eine Startseite mit jeder Menge Button und von dieser ist man in die jeweiligen Activities gesprungen, dann wieder zurück zur Startseite und halt wieder in die gewünschte Unterseite.


    Jetzt habe ich mir eine Toolbar gebastelt (Iphone like) welche am unteren Bildrand plaziert ist und welche nun die Navigation übernehmen soll.
    Sprich man muss nicht mehr zurück zur Startseite, sondern kann sofort in die jeweiligen Programmbereich wechseln.


    Logischerweise soll die Navigation auf allen Unterseiten erscheinen.


    -> vom Layout zu implementieren ist das ja kein Problem, dank <include> kann man das Design überall einbinden und somit re-usen.
    -> mit der Logik muss ich mal schauen, bzw iist das der Punkt wo ich gerade hänge -


    Wie steuere ich das Programm nun vernünftig ???


    Da ich den CompatibilityPack installiert habe bzw auch ActionBar Sherlock nutze, hab ich mir gedacht FRAGMENTE wären evntl. eine Lösung,
    hat das schon mal jemand gemacht oder kennt sich damit aus ???


    oder gibt es da noch einen anderen Lösungsansatz ???

    hmm also Html 5 ist noch ein paar Jahre davon entfernt ein robustes framwork für die Spieleentwicklung zu sein. natürlich gibt es ein paar beispiele im internet - aber das ist noch nicht wirklich alltagstauglich.



    die meisten spiele sind aber native apps sprich in java programmiert.

    Hmmm kommt darauf an.... wie und wo du Ihn einsetzen willst


    Die von Android angebotenen Parser funktionieren gut und sind leicht einzubinden,
    ich hatte z.b. nur ein Problem beim Lesen von Feeds


    > der SAX parser hat einen Bug, deswegen ist seine Nutzung erst ab 2.2 fehlerfrei möglich, meine App sollte aber ab 2.1 fehlerfrei laufen. Also habe ich diese Alternative gefunden .


    http://www.thebuzzmedia.com/so…ple-java-xml-parser-sjxp/




    zum Verarbeiten lokaler XML Dateien (von SD Karte z.B.) benutze ich den XML Pullparser, der ist einfach zu strukturieren und unheimlich flexibel.

    Ei, ei, ei alles klar jetzt weiss ich was du meinst.


    Naja da würde ich wieder einen Service installieren, der permanent läuft und den PowerManager beobachtet.


    http://developer.android.com/r…roid/os/PowerManager.html and check isScreenOn()



    oder Lösung aus dem englischen Bereich



    You can create a BroadcastReceiver and register it with your application to listen for Intent.ACTION_SCREEN_OFF, Intent.ACTION_SCREEN_ON, and Intent.ACTION_USER_PRESENT. Between SCREEN_OFF and USER_PRESENT, the phone is locked.

    hmmm, und kann man irgendwie den schalter checken ob das gerät von hand eingeschaltet wird.


    ??? Häh ??? Man kann das Gerät nur von Hand einschalten, was will man da checken ???


    einschalten = boot


    Das Problem ist eher der Lockscreen, den müsstest du in den Einstellungen->security am besten ausschalten, dann startet er ja dank BOOTReceiver auch zu deiner APP durch