@up
Jak chcesz zrobić wyświetlanie dwóch obrazków zależnie od pory dnia, spróbuj zrobić tak
$#DH#>=15&Dmm#>=00?/storage/emulated/0/tapety/1.jpeg:/storage/emulated/0/tapety/2.jpeg$
Powyższa instrukcja sprawdzi czy spełniony jest następujący warunek:
Jeśli godzina(#DH#) jest większa lub równa 15, i jednocześnie minuta (#Dmm#) jest większa lub równa 00, to wyświetl tapete 1.jpg, w innym przypadku wyświetl tapetę 2.jpg.
Ja to sprawdziłem w nieco inny sposób: Wstawiłem w widget PIERWSZĄ TAPETĘ, na nią nałożyłem DRUGĄ TAPETĘ ( opcja Mapa Bitowa WAŻNE ABY W KAZDYM Z PRZEDTAWIONYCH PRZYPADKÓW TAPETA NOCNA NA LIŚCIE UKŁADU WIGETU BYŁA JAKO PIERWSZA, PRZED TAPETĄ DZIENNĄ) - nie używałem bezpośredniego wczytywania grafiki z lokalizacji w pamięci telefonu, i w Zaawansowanych parametrach DRUGIEJ TAPETY wpisałem warunek:
$#DH#>=15&Dmm#>=00?[bo]100[/bo]:[bo]0[/bo]$
Warunek ten sprawia, że tapeta PIERWSZA jest wyświetlana bez przerwy, jednak po godzinie 15:00 "nakłada' się na nią TAPERA DRUGA ( [bo]100[/bo] oznacza 100% wyświetlania tapety drugiej, analogicznie [bo]0[/bo] oznacza 0% krycia tapety DRUGIEJ - staje się całkowicie transparentna)
Jak zawsze jest jakieś ale... przedstawiony przeze mnie warunek będzie się spełniał do godziny 23:59, o północy, 00:00, zooper odczyta, że wartości są mniejsze niż zadane i przestanie wyświetlać TAPETĘ DRUGĄ (nocną??)
Jednak korzystając z tego, że zooper akceptuje wyrażenia logiczne można go oszukać.
Więc jeśli chcesz alby TAPETA DRUGA była wyświetlana całą noc do rana, trzeba nieco zmodyfikować skrypt...
$#DH#>=15&Dmm#>=00||#AISDAY#<1?[bo]100[/bo]:[bo]0[/bo]$
Wzbogaciliśmy skrypt o dopisek ||#AISDAY#<1.
AISDAY to warunek zoopera, który zwraca 1 w czasie światła dziennego, w nocy zwraca 0
|| - to logiczne wyrażenie, alternatywa OR
Teraz zooper sprawdzi czy założony przez nas wcześniej "godzinowy warunek" jest spełniony i czy jednocześnie AISDAY wskazuje mu że jest noc (nie ma światła dziennego 🙂 )
Ten zapis wyświetli TAPETĘ DRUGĄ od założonej godziny przez całą noc do rana (rano zooper rozumie jako astronomiczna pora wschodu słońca + kilka minut )
Jeśli mówimy o innej tapecie na noc a innej na dzień, możemy zoopera jeszcze bardziej wykorzystać i kazać mu wyświetlić tapetę nocną bezpośrednio po astronomicznym zachodzie słońca i nie wyświetlać jej bezpośrednio po astronomicznym wschodzie słońca ( co dziennie tapeta będzie znikać i pojawiać się o różnych godzinach.
Robimy to tak
Wstawiamy obraz mapy bitowej z tapetą DZIENNĄ
Nakładamy na nią drugą tapetę, nazwijmy ją NOCNĄ
W wstawieniach zaawansowanych tapety NOCNEJ wpisujemy taki oto skrypt:
$#DHH:mm#>=#ASHH:mm#||#AISDAY#<1?[bo]100[ /bo]#DHH:mm#>=#ARHH:mm#||#AISDAY#?=1)[bo]0[ /bo]$
O co tu chodzi??
Tak w skrócie...
Jeśli aktualna godzina jest większa lub równa gozinie zachodu słońca, oraz jednocześnie AISDAY zwraca warość 0 (brak światła dziennego) to TAPETA NOCNA jest wyświetlana, a jeśli aktualna godzina jest większa od godziny wschodu słońca i jednocześnie AISDAY = 1 ( jest światło dzienne ) to tapeta się chowa stając się przezroczysta a tym samym pokazuje się tapeta dzienna 🙂
I jeszcze raz przypominam:
WAŻNE ABY W KAZDYM Z PRZEDTAWIONYCH PRZYPADKÓW TAPETA NOCNA NA LIŚCIE UKŁADU WIGETU BYŁA JAKO PIERWSZA, PRZED TAPETĄ DZIENNĄ
Trochę się rozpisałem, mam nadzieję, że w miarę logicznie. Jednak możliwości zoopera są ogromne a ja nie chciałem pisać samych skryptów, tylko jednocześnie conieco pojasnić...
Jeśli ktoś z Userów zna łatwiesze sposoby na powyższy problem to piszcie... ja dopiero poznaje zoopera 😉 i czasami sporo czasu schodzi zanim wymyślę jedną linijkę skryptu spełniającego moje założenia 😉