German generelle Frage zum Anfangen

heino54

Member
Licensed User
Longtime User
Moin, Moin,
ich habe mir jetzt viele Beispielprogramme angesehen und möchte nun mein altes Delphiprogramm umsetzen, und nun habe ich ein paar grundlegene Fragen:
1.) ist es sinnvoll mit mehreren Activen Layout's zu arbeiten oder arbeitet man in Android nur mit einem Layout und legt dann immer neue Panel's mit Visible True/Hide über den ganzen Bildschirm z.B. für Optionen, Hilfe, Level' s etc. ? weiss vielleicht jemand ein Beispiel mit meherern aktiven Fenstern, (wenn es denn so gemacht wird) oder mit verschiedenen Panel's ?
2.) ich habe jetzt nur ein Probehandy mit einem 3.2" Bildschirm, worauf sollte ich am Anfang unbedingt aufpassen um mein Programm problemlos auf Handy's mit z.B. 4" oder größer zu installieren ohne jedes mal die Panel's oder Button's anzugleichen (Bildschirmauflösung).
vielen Dank im voraus
Heino
 

klaus

Expert
Licensed User
Longtime User
1) Generell arbeitet man in Android mit mehreren Activities und nicht mit meheren Panels die man mit Visible = True oder Visible = False anzeigt oder versteckt.
Siehe Kapitel 13 im Beginner's Guide.

2) Siehe Kapitel 8.6 , 8.7 , 8.9 , 8.10 und 8.11 im Beginner's Guide.

Beste Grüsse.
 
Last edited:

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
Hallo,habe gerade b4a installiert - alles klar, ein paar tools auf den Designer gezogen und dann kompiliert. Das Programm erscheint auf dem Android, aber ohne die Tools - nur schwarzer Bildschirm bis auf den Titel. Msgbox wird ggf auch korrekt angezeigt, aber button, checkbox und Browser sind nicht zu sehen. Wahrscheinlich ein ganz blöder Anfängerfehler, der sich leicht beheben läßt. Bin für jeden Tip dankbar:)
 

Kiffi

Well-Known Member
Licensed User
Longtime User
lädst Du denn auch Dein Layout? Im Eifer des Gefechts kann es
vorkommen, dass man die 'Activity.LoadLayout()' nicht auskommentiert.

B4X:
Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    'Activity.LoadLayout("Layout1") ' <-!!!

End Sub

Grüße ... Peter
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
..das wars - herzlichen Dank. Super Entwicklungsumgebung, aber man muss sich erst reinpfriemeln:) Weisst Du zufällig, wie ich einen Videostream im Webbrowser wiedergeben kann? Vermutlich muss eine Bibliothek geladen werden... alternativ wohl den Standartbrowser starten. Mit einer Art execute oder shell...
 

Kiffi

Well-Known Member
Licensed User
Longtime User
Weisst Du zufällig, wie ich einen Videostream im Webbrowser wiedergeben kann? Vermutlich muss eine Bibliothek geladen werden... alternativ wohl den Standartbrowser starten. Mit einer Art execute oder shell...

Du meinst ein WebView? Dürfte mit normalem HTML machbar sein:

B4X:
myWebView.LoadHtml("<html><body><video><source src='video.ogg' type='video/ogg' /></video></body></html>")

(ungetestet)

Grüße ... Peter
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
hmm, da ist schon sehr hilfreich, aber das video ist bereits auf einer html seite einer IP Camera für PDA optimiert, die seite wird auch mit loadurl aufruf im webview korrekt dargestellt, nur das video applet nicht. Wenn ichs mit dem handy browser aufrufe, ist es da. Es muss also auf dem handy ein entsprechendes browserapp vorhanden sein, dass aber vom webview nicht automatisch mitbenutzt wird. Daher meine Vermutung, dass ich eine lib nachladen muss...
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
..wow, ich glaube, ich habs - da war im Hintergrund eine pw- abfrage, die musste ich erst bedienen über WebView1_UserAndPasswordRequired - jetzt funzt's

herzlichen dank:)
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
ich sehe verschiedentlich, dass user httprequest benutzen - geht bei mir so nicht. Da muss man wohl httputils laden - wo finde ich das?
 

Kiffi

Well-Known Member
Licensed User
Longtime User
Da muss man wohl httputils laden - wo finde ich das?

auf dieser Site befindet sich oben rechts ein Suchfeld. Tipp dort mal 'httputils' ein, warte ein wenig et voilà! :)

2014-05-31_150042r1s6n.png


Grüße ... Peter
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
... bis zum download von http.jar und http.xml hab ich's geschafft - aber wo ist der interne lib folder?-)) Steh hier leider noch wie der Ochs vorm Berge... - ok, habe den zielordner gefunden, aber da sind die files bereits enthalten - wie binde ich sie nur in das Projekt ein? o.k., bei libs anklicken - sorry, wenn ich nerve:))))))
 
Last edited:

klaus

Expert
Licensed User
Longtime User
Den musst Du selbst erstellen.
Im IDE Menü Tools / Configure Paths:

AdditionalLibraries.jpg

Basic4Android benutzt zwei Ordner:
- Die 'standard' Libraries die mit Basic4Android mitgeliefert sind.
- Zusäzliche Libraries die Du vom Forum runterladen kannst, für diese musst einen separaten Ordner erstellen.
 
Last edited:

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
hi, kriege den timer nicht zum laufen.

mit

timer1.Initialize(t_tick,5000)

springt er nur einmal in die routine

t_tick - allerdings viel schneller, als nach 5 sec. Ist da ev noch eine Zeitbasis einzustellen:)

... timer springt nach initialisierung im activity_create DIREKT in sub - ohne verzögerung; dort ist enabled aber schon ausgeschaltet und interval ebenfalls nicht mehr vorhanden... kann eigentlich nur'n fehler in der deklaration sein...
 
Last edited:

Kiffi

Well-Known Member
Licensed User
Longtime User
Du musst IMO den Timer nach dem initialisieren noch anschalten:

B4X:
timer1.Enabled = True

Grüße ... Peter

// Edit:

Die Initialisierung ist so korrekt (erster Parameter muss ein String sein):

B4X:
timer1.Initialize("t_tick", 5000)
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
...perfekt, danke. Vorher ist er beim Einschalten immer abgestürzt, komisch war nur, dass er in die sub gesprungen ist - aber da hat er wohl den Befehl irgendwie falsch interpretiert..

herzlichen Dank:) (wäre echt noch Zeit draufgegangen)
 

Hans- Joachim Krahe

Active Member
Licensed User
Longtime User
... das Blöde ist, ich weiss garnicht, wo ich anfangen soll - mache das ja erst seit ein paar Tagen, aber langsam funzts. Steuere jetzt schon ein IP Relais (KMTronic)mit 8 Relais und zwei Webcams in einer app...
 

DonManfred

Expert
Licensed User
Longtime User
Wenn Du eine tick-sub namens t_tick hast dann hätte die initialisierung mittels
B4X:
timer1.Initialize("t", 5000)
sein müssen. Das "_tick" wird an den eventnamen angehangen und aus der Kombination ergibt sich dann der Subname der aufgerufen wird.
 
Top