Επειδή βλέπω τελευταία ότι ολοένα και περισσότερα φίλοι ρωτάνε πως θα ρυθμίσουν σωστά το widget που κατέβασαν είπα να κάτσω να γράψω τι χρειάζεται να κάνει κάποιος
ώστε να προσαρμόσει το widget του όπως θέλει αυτός. Στο συγκεκριμένο οδηγό θα χρησιμοποιήσω ένα παράδειγμα από ένα widget το Glass Widget (τα περισσότερα χρησιμοποιούν
τον ίδιο περίπου κώδικα οπότε χρειάζονται οι ίδιες αλλαγές με αυτό-θα αναφέρω στο τέλος έναν διαφορετικό τρόπο setup που χρησιμοποιούν κάποια).
ΠΑΡΑΜΕΤΡΟΠΟΙΗΣΗ
Αρχίζοντας καλό είναι, όσοι δεν έχετε ένα πρόγραμμα επεξεργασίας html αρχείων(editor,) να κατεβάσετε από ΕΔΩ το συγκεκριμένο editor που όπως θα δείτε παρέχει καλύτερη απεικόνιση του κώδικα και ευκολότερη αναζήτηση.
- 1.Προσαρμογή καιρού στην πόλη μας
που χρησιμοποιεί το widget για να ανανεώνει τον καιρό. Συνήθως τα widget χρησιμοποιούν το Yahoo Weather και μπορείτε να βρείτε τον κωδικό που αντιστοιχεί στην τοποθεσία σας από εδώ βάζοντας την πόλη σας.
Ενδέχεται επίσης να χρησιμοποιεί ως κωδικό τα νούμερα στο τέλος του link που είναι ο καιρός της Αθήνας.Ο κωδικός στην Αθήνα είναι 946738. Τέλος μπορεί να χρησιμοποιεί και το Accu Weather για ανανέωση και μπορείτε να βρείτε τον κωδικό κάνοντας μια αναζήτηση στο google.
Πως θα ξέρετε ποια από τις 2 μορφές του Yahoo Weather χρησιμοποιείται στο widget σας; Από τη μορφή του κωδικού που υπάρχει ήδη στο var locale.
GPS Based Widgets
Στα GPS Widgets η διαδικασία για τον εντοπισμό της πόλης σας είναι πιο απλή. Συνήθως ανοίγετε την εφαρμογή "My location" που δημιουργείτε όταν κατεβάσετε το θέμα που επιθυμείτε στη homescreen σας και απλά ανοίγετε το "Sig Change".
Μετά αφού έχετε ήδη ανοιχτό το GPS θα πρέπει να επιτρέψετε στην εφαρμογή να χρησιμοποιήσει τις Υπηρεσίες Τοποθεσίας. Πρέπει το GPS να έχει σήμα δηλαδή να μην είστε μέσα σε σπίτι όπου συνήθως δεν έχετε σήμα GPS.
H εφαρμογή αυτή χρειάζεται να ρυθμιστεί μόνο μετά την εγκατάσταση.Η τοποθεσία σας εφόσον το GPS σας είναι ανοιχτό θα ενημερωθεί ακόμα και αν η εφαρμογή τερματιστεί από εσάς ή από το ios.Δεν χρειάζεται να τρέξετε πάλι την εφαρμογή μετά από reboot.
- 2.Θερμοκρασία σε βαθμούς Κελσίου
var isCelsius = false
Αλλάζοντας την τιμή από false σε true η τιμή της θερμοκρασία θα απεικονίζεται σε βαθμούς Κελσίου.Αν είναι false η τιμή θα είναι σε fahrenheit.
Επίσης μερικά widget έχουν την εξής επιλογή
var useRealFeel = false
Όταν είναι false δε δείχνει το Real Feel,ενώ με true το δείχνει.Ωστόσο επειδή τα περισσότερα widget δεν έχουν προσθέσει τον κώδικα για την εμφάνιση του RealFeel όταν το έχετε true ενδέχεται να υπάρχει πρόβλημα και να μην εμφανίζει σωστά ούτε την κανονική θερμοκρασία.Οπότε καλό είναι ΝΑ ΜΗ ΤΟ ΧΡΗΣΙΜΟΠΟΙΕΙΤΕ ΤΟ REALFEEL εκτός και δοκιμασμένα δουλεύει.
- 3.Μετατροπή 12ώρου format ώρας σε 24ώρου
currentHours = ( currentHours > 12 ) ? currentHours - 12 : currentHours;
Όταν έχει αυτή τη μορφή σημαίνει ότι όταν οι ώρες είναι από 13 και πάνω μέχρι 24 μειώνεται κατά 12 δείχνοντας 12ώρη μορφή.Αν εμείς βάλουμε
// στην αρχή της γραμμής τότε ο κώδικας αναγνωρίζεται σαν σχόλιο και το format είναι 24ώρο που είναι και το default γι αυτό δε χρειάζεται κάποια μετατροπή.
Ο κώδικας θα πρέπει να γίνει έτσι:
//currentHours = ( currentHours > 12 ) ? currentHours - 12 : currentHours;
Κάποιοι κώδικες έχουν διαφορετικό τρόπο μετατροπής 12->24.Το παράδειγμα εδώ έχει ως σκοπό να καταλάβετε πως πρέπει να αλλάζει ο κώδικας.Ο συγκεκριμένος κώδικας υπάρχει στα περισσότερα widget.Αν το widget σας έχει διαφορετικό κώδικα μετατροπής μπορείτε να σβήσετε τον κώδικα που έχει και να προσθέσετε αυτόν ή να ρωτήσετε ώστε να βρούμε λύση.
- 4.Ρυθμός ενημέρωσης του widget
μικρός είναι ο ρυθμός ανανέωσης τόσο πιο επώδυνο είναι το widget για την μπαταρία σας.Στον κώδικα θα πρέπει να βρούμε κάτι τέτοιο
var updateInterval = 30; // in minutes.
και αλλάζουμε την τιμή σε λεπτά σε τιμή που εμείς θέλουμε.
- 5.Αλλαγή της θέσης των στοιχείων του widget
#city { position: absolute; top: 50px; right: 0px; down: 0px; left: 145px; width: 256px; height: 481px;
Εδώ έχουμε τη θέση απεικόνισης της πόλης. Πειράζοντας την τιμή του top αλλάζουμε την κατακόρυφη θέση της πόλης ενώ με το left αλλάζουμε την οριζόντια θέση. Κάνοντας πειράματα με τις τιμές
φτάνουμε στο επιθυμητό αποτέλεσμα.
Παρόμοια παρακάτω βλέπουμε τον αντίστοιχο κώδικα για τη θερμοκρασία:
#temp { position: absolute; top: 32px; right: 0px; down: 0px; left: 130px; width: 320px; height: 481px;
Πάλι πειράζοντας τα top left αλλάζουμε οριζόντιο κατακόρυφο προσανατολισμό.(καλύτερα να γίνεται στην αρχή με μικρό βήμα ώστε να το ελέγχετε)
Τέλος,κάποια στοιχεία του widget επειδή παίρνουν τιμές δυναμικά περιγράφονται συνήθως στο τέλος του κώδικα.Για παράδειγμα ο κώδικας
που περιγράφει τη θέση των "λεπτών" είναι:
<table style="position: absolute; top: 62px; left: 190px; width: 320x; height: 461px; z-index: 14"> <tr align="right" valign="top" border="0" cellpadding="0"> <td height="12" valign="top" margin-right="0"> <span id="mins"> <script language="JavaScript">updateClock(); setInterval('updateClock()', 1000 )</script> </span>
Καταλαβαίνουμε ότι αναφέρετε στα λεπτά από το span id ="mins". Πάλι πειράζοντας τα top,left βηματικά φτάνουμε στο επιθυμητό αποτέλεσμα.
Κάποια widget έχουν ένα background το οποίο δεν περιγράφεται από κώδικα και είναι σε μορφή εικόνας .png.Αν εμείς αλλάξουμε τη θέση των στοιχείων που θέλουμε
δεν θα φαίνεται σωστά με το overlay.png(που είναι το background του glass widget),οπότε καλύτερο είναι να αλλάξουμε πρώτα τη σχετική θέση του overlay.png
και μετά να προσαρμόσουμε τα στοιχεία στο overlay.
- 6. Αλλαγή Wallpaper του Widget
το με αυτό που θέλουμε με ίδια ακριβώς ονομασία με αυτό που έχει ήδη.Αν δε θέλουμε το wallpaper του widget ένας τρόπος είναι να σβήσουμε την εικόνα που έχει ως wallpaper τελείως ώστε να εφαρμόζεται μόνο του theme το wallpaper.
Σε περίπτωση που θέλουμε να αντικαταστήσουμε wallpaper προσέχουμε να έχει ίδιες διαστάσεις με το ήδη υπάρχουν ώστε να ταιριάζει στην οθόνη του κινητού σας
και να μη βγαίνει παραμορφωμένο.
ΤΕΛΟΣ
Κάποια widget έχουν πιο οργανωμένη δομή με αποτέλεσμα να είναι πιο εύκολη η παραμετροποίησή τους.Συνήθως έχουν ένα φάκελο setup
όπου μέσα έχουν ένα αρχείο με κατάληξη js.Ανοίγετε το αρχείο αυτό με κάποιον editor ή Notepad και αλλάζετε αυτά που θέλετε
σύμφωνα με τα παραπάνω.
Οποιαδήποτε παράλειψη ή λάθος όποιος το δει παρακαλώ να μου το πει να το διορθώσω.Ελπίζω να τα έγραψα κατανοητά.
Τελευταία επεξεργασία από: mikexs, 10/04/2012 - 11:40