>> FRED Widjaja: Εντάξει.
Γεια σε όλους.
Ευχαριστούμε Σας καλωσορίζουμε για μαζί μου σε αυτό το σεμινάριο.
Έτσι, σήμερα πρόκειται να μιλάμε για πώς να αναπτύξουν εφαρμογές για το Android,
και ειδικότερα, θα πάμε να να χρησιμοποιούν το Android Studio για
να αναπτύξουν τις εφαρμογές μας.
>> Έτσι, όπως μπορείτε όλοι να γνωρίζουν.
Android χρησιμοποιεί Java, και έτσι θα είναι διέρχεται μια σύντομη εισαγωγή
στην ίδια Java.
Έτσι ξέρω ότι πολλοί από εσάς έχετε μόνο προγραμματισμό εμπειρία στην Γ λοιπόν
ότι είναι εντελώς καλά, και αυτό είναι επειδή Java είναι πολύ, πολύ
όμοια με τη C, με μικρές διαφορές.
>> Έτσι, οι τύποι στη Java είναι σταθερό τον αριθμό των bytes.
Έτσι, σε C, έχουμε σορτς και λαχταρά, και
διαφέρουν σε αριθμό δυαδικών ψηφίων από μηχανή σε μηχανή.
Στην Java, είναι ήδη θέσει ως πρότυπο.
Έτσι bytes έχουν οκτώ bits, σορτς έχει 16 bits, και ούτω καθεξής και ούτω καθεξής.
Έχουμε, επίσης, χαρακτήρες, booleans, και επίσης άρματα και δίκλινα.
Έτσι, ο τρόπος για να προγραμματίσετε Java, είναι πολύ παρόμοια.
Έτσι, για παράδειγμα, έχουμε για βρόχους και ενώ βρόχους,
και αν και else είναι ακριβώς το ίδιο όπως θα κάνατε σε C.
>> Εντάξει, έτσι η ειδική πράγμα για Java είναι ότι είναι ένα αντικείμενο προσανατολισμό.
Τώρα, ποια είναι τα αντικείμενα;
Έτσι, αν κοιτάξετε το τα πράγματα γύρω σας, θα
παρατηρήσετε ότι κάθε αντικειμένου του πραγματικού κόσμου έχει δύο κοινά χαρακτηριστικά.
Και αυτό είναι ότι έχουν κατάσταση και έχουν κάποιο είδος της συμπεριφοράς.
>> Έτσι, για παράδειγμα, τα σκυλιά θα έχουν μέλη τα οποία
είναι το όνομα, το χρώμα, τη φυλή, ίσως αν ο σκύλος είναι πεινασμένοι ή όχι.
Και κάποιες συμπεριφορές που τα σκυλιά θα έχουν θα γαβγίζει, ή κουνάει ουρά,
ή κουβαλούν μια μπάλα.
Έτσι, μπορούμε να χρησιμοποιήσουμε και αυτό σε άψυχα αντικείμενα.
Έτσι, για παράδειγμα, τα αυτοκίνητα, έχουν το μοντέλο, έτος, μέγιστη ταχύτητα,
και ούτω καθεξής και ούτω καθεξής.
Και έχουν κάποια συμπεριφορά.
Για παράδειγμα, την επιτάχυνση, ή πέδησης, ή πηγαίνει προς τα πίσω.
>> Έτσι αντικειμένων Java προσπάθεια να διαμορφώσει αυτό έχοντας πεδία και μεθόδους.
Έτσι πεδία είναι τα κράτη που το αντικείμενο της Java μπορεί να έχει,
ενώ η μέθοδος θα εκπροσωπεί την συμπεριφορά που ένα αντικείμενο Java θα έχουν.
Έτσι, όταν λέω μεθόδους και τα πεδία, εγώ πραγματικά
σημαίνει μόνο μεταβλητές και συναρτήσεις.
Είναι ακριβώς η ίδια, εκτός ότι εφαρμόζονται σε ένα συγκεκριμένο αντικείμενο.
>> Εντάξει, έτσι κινείται προς τάξεις.
Java τάξεις είναι σαν το σχεδιαγράμματα για ένα αντικείμενο.
Θα σας πω τι μεθόδους έχει, ποιους τομείς έχει,
και ακόμη και εδώ, έχουμε κάτι ονομάζονται τροποποιητές πρόσβασης που
θα φτάσουμε σε μια στιγμή.
Έτσι για να δηλώσει μια κλάση Java, είναι πολύ παρόμοια σύνταξη με ένα struct C.
>> Εδώ θα ξεκινήσει με τη δημόσια τάξη αυτοκινήτου, και στη συνέχεια να έχουμε μια ανοιχτή τιράντες και, στη συνέχεια,
κάποιος αριθμός των πεδίων που θέλετε το αντικείμενο να έχει.
Και τότε εδώ έχουμε κάποιες μεθόδους, και έχουμε επίσης ένα κατασκευαστή αντικείμενο.
Τώρα τι είναι αυτό το αντικείμενο κατασκευαστή που κάνει είναι να λέει το αντικείμενο,
Εντάξει, θέλω να προετοιμαστεί αυτό αντικείμενο με κάποιο είδος των πεδίων.
>> Μέχρι εδώ, θέλουμε κάθε αυτοκίνητο να έχουμε ένα μοντέλο και ένα χρόνο.
Έτσι έχουμε ένα κατασκευαστή μόλις ειδικά
για το μοντέλο και το έτος, και Αυτό θα καθορίσει το πεδίο μοντέλο
σε μια ορισμένη τιμή, και το πεδίο έτος.
>> Τώρα σχετικά με την πρόσβαση τροποποιητές μιλούσα για.
Εδώ έχουμε το κοινό και ιδιωτική τροποποιητές πρόσβασης.
Έτσι, μπορείτε να σκεφτείτε αυτό ως η RWX στους καταλόγους σας.
Έτσι επιτρέπει σε ορισμένα άτομα να διαβάσει και να έχουν πρόσβαση
σε αυτά τα πεδία και τις μεθόδους.
>> Έτσι, αν μπορώ να πω ότι το μοντέλο και έτος και η ταχύτητα είναι ιδιωτικές,
αυτό σημαίνει ότι άλλα αντικείμενα που δεν μπορούν να επιχειρήσετε να αποκτήσετε πρόσβαση τομείς αυτό αντικειμένου
υπάρχουν ιδιωτικά.
Αλλά όταν μπορώ να ρυθμίσω την πρόσβαση τροποποιητής να είναι δημόσιες,
τώρα αυτό σημαίνει ότι άλλα αντικείμενα είναι ελεύθεροι να έχουν πρόσβαση ακόμη και
χρησιμοποίησε τις μεθόδους που ορίζονται εδώ.
>> Έτσι, αυτό είναι το βασικό Αντικείμενο αυτοκίνητο που έχω.
Έχουμε την επιταχύνουν, σπάσει, και οι μέθοδοι getSpeed.
Σε αυτό το σημείο, είναι σαφές σε όλους για Αντικειμένων Java και πώς να τα δηλώσουν;
Cool, εντάξει.
Έτσι, εάν θέλετε να χρησιμοποιήσετε τη Java αντιρρήσεις στο ίδιο πρόγραμμα,
τότε μπορούμε να χρησιμοποιήσουμε αυτό νέα κατασκευαστή αυτοκινήτων.
Έτσι, εδώ λέμε θέλουμε να δηλώνουμε ένα νέο αντικείμενο, το οποίο είναι τύπου αυτοκινήτου.
Και εδώ είναι που ισχύουν το μοντέλο και το έτος,
τα οποία έχουν οριστεί στη Αυτό το αντικείμενο εδώ.
>> Έτσι, αυτό είναι επίσης ένα άλλο αντιρρήσεις, αν παρατηρήσετε.
Είναι μια κατηγορία για το το ίδιο κύριο πρόγραμμα.
Και έχουμε αυτή την PSVM, ή δημόσια στατική άκυρη κύρια, λειτουργία,
και η έναρξη της το σημείο του προγράμματός σας,
παρόμοιο με το κύριο λειτουργία στο πρόγραμμά σας Γ.
Εδώ, μπορούμε να έχουμε πρόσβαση και χρησιμοποιήσετε τις λειτουργίες του αντικειμένου
χρησιμοποιώντας την τελεία και στη συνέχεια το όνομα της συνάρτησης σημειογραφία.
Και μπορούμε να καθορίσουμε ακόμα ορισμένα επιχειρήματα ή τις παραμέτρους
για την εν λόγω λειτουργία.
>> Εντάξει, έτσι και τώρα κινείται προς την κληρονομιά.
Έτσι, αντικείμενα του πραγματικού κόσμου μπορεί να μοιράζονται τα ίδια χαρακτηριστικά.
Έτσι, για παράδειγμα, υπάρχει διαφορετικούς τύπους ποδηλάτων.
Για παράδειγμα, ποδήλατο βουνού, ποδήλατα πόλης, ποδήλατα ή παράλληλα.
Έτσι, έχουν αυτό το κοινό χαρακτηριστικό της είναι ένα ποδήλατο.
>> Και έτσι ποδήλατα μπορούν να έχουν δύο τροχούς και μπορεί να έχουν ένα τιμόνι, ίσως ακόμη και
μια ουρά φως ή κάτι τέτοιο.
Έτσι Java μας δίνει αυτό εξουσία να εκπροσωπεί τα αντικείμενα
που έχουν ορισμένα κοινά χαρακτηριστικά μέσω της κληρονομικότητας.
Τώρα, τι κληρονομιά κάνει, είναι περνά στα χωράφια και τις μεθόδους ενός αντικειμένου
σε ένα αντικείμενο παιδιού.
>> Έτσι, για παράδειγμα, αν έχουν ένα αυτοκίνητο, και έχει
η κατάσταση έχει τέσσερις ρόδες και ένα τιμόνι,
τότε μπορούμε να περάσουμε αυτό για να ορισμένων διαφορετικών τύπων οχημάτων.
Για παράδειγμα, έχουμε την σεντάν, σπορ αυτοκίνητο, και ένα SUV.
Τώρα, αυτά τα τρία διαφορετικά τύποι αυτοκινήτων ακόμα
έχουν τέσσερις τροχούς και ένα τιμόνι, αλλά στη συνέχεια
μπορεί να έχουν ορισμένες ιδιαίτερα χαρακτηριστικά,
όπως έχει πέντε καθίσματα και ένα για ένα φορείο, για παράδειγμα.
>> Έτσι, για να κάνουν χρήση αυτής της κληρονομιάς χαρακτηριστικό, χρησιμοποιούμε αυτό εκτείνεται λέξη-κλειδί.
Έτσι θυμηθείτε πίσω στο αυτοκίνητο αντικείμενο που ορίστηκε προηγουμένως.
Τώρα ο καθορισμός ενός αντικειμένου Sedan.
Έτσι, αυτό το αντικείμενο Sedan θα έχει η ίδιους τομείς και λειτουργίες, ή μεθόδων,
ότι το αυτοκίνητο θα έχει.
Στη συνέχεια, όμως, εδώ μπορώ να προσδιορίσω ορισμένες πρόσθετες λειτουργίες,
για παράδειγμα, το σύνολο τον αριθμό των επιβατών
και ο αριθμός των επιβατών πάρει.
>> Εδώ, μπορείτε επίσης να παρατηρήσετε ότι μπορούμε να παρακάμψετε τις μεθόδους,
και αυτό σημαίνει ότι είμαστε ακριβώς αντικαθιστώντας την συμπεριφορά
να ενεργήσει διαφορετικά σε ορισμένες περιπτώσεις.
Έτσι, για παράδειγμα, θέλω να ορίσετε μια μέγιστη ταχύτητα για το αυτοκίνητό μας.
Και για να το κάνουμε αυτό, μπορώ να ελέγξω αν αυτό ταχύτητα θα πάει πέρα ​​από το μέγιστη ταχύτητα.
Και αν δεν το κάνει, τότε που εγώ αποκαλώ σούπερ κατηγορία «επιταχύνουν τη μέθοδο.
Έτσι, αυτό είναι το super.accelerate () κλήσεις η σούπερ κατηγορία «επιταχύνουν τη μέθοδο.
>> Τέλος, θα πάμε να μιλάμε για διασυνδέσεις.
Έτσι διασυνδέσεις είναι ένας τρόπος για να εκθέσει μόνο ορισμένων μεθόδων με τον έξω κόσμο.
Έτσι είναι σαν ένα τραπέζι του περιεχομένου, και
να σκεφτείτε τους όπως όπως τα αρχεία επικεφαλίδων C, μόνο
όπως και οι μέθοδοι με άδειο φορείς, και διευκρινίσει το αντικείμενο ή την κλάση
πρέπει να έχει, ή ποιες μεθόδους το αντικείμενο ή κλάση πρέπει να έχει.
>> Έτσι, για παράδειγμα, αν έχουν μια διεπαφή ποδηλάτων,
και έχει τρεις διαφορετικές μεθόδους, και εδώ, αν μπορώ να εφαρμόσω αυτή τη διασύνδεση,
τότε αυτό σημαίνει ότι το ποδήλατο θα πρέπει να εφαρμόσει τις ίδιες τρεις
τις μεθόδους που ορίζονται στην διεπαφή.
>> Μέχρι αυτό το σημείο, και άλλες ερωτήσεις;
Εντάξει, δροσερό.
Έτσι, αυτό ήταν μια πολύ σύντομη και γρήγορη εκμάθηση σε Java.
Υπάρχει τρόπος περισσότερες δυνατότητες και θέματα σχετικά με Java, που μπορείτε πραγματικά να πάτε μέσα.
Για παράδειγμα, υπάρχει γενόσημα φάρμακα, υπάρχει τύπων δεδομένων,
υπάρχει ακόμη enums και πράγματα.
Έτσι, εάν θέλετε να μάθετε περισσότερα γι 'αυτό, ακολουθούμε αυτούς τους συνδέσμους,
και θα σας διδάξει περισσότερα για αυτούς.
>> Εντάξει, έτσι, ας προχωρήσουμε στο πραγματικό κρέας του σεμιναρίου,
και αυτό είναι πραγματικά Android προγραμματισμού.
Έτσι, πριν έχουμε πραγματικά πάρει με τον προγραμματισμό,
Θέλω να μιλήσω για κάποια ορολογία.
Έτσι, μια δραστηριότητα είναι Τρόπος του Android λέγοντας
είναι μια ενιαία οθόνη εντός της εφαρμογής.
>> Έτσι, για παράδειγμα, αν έχετε ένα Gmail app, έχουμε τη δραστηριότητα δείτε τα μηνύματα.
Και τότε, αν κάνετε κλικ στο κουμπί ένα συγκεκριμένο e-mail, ότι
θα δείξει κάποια άλλη δραστηριότητα όπου Είναι μια άποψη email δραστηριότητα.
Και στη συνέχεια, έχουμε επίσης το συνθέτουν δραστηριότητα ή η δραστηριότητα να επεξεργαστείτε το μήνυμα.
Και έτσι δραστηριότητες γενικά μόνο μία οθόνη
μέσα στην ίδια την εφαρμογή.
>> Τώρα, οι απόψεις είναι τα στοιχεία που κάνουν μέχρι την οθόνη, ή την ίδια τη δραστηριότητα.
Έτσι σχεδιάσετε ένα ορισμένο πράγμα στην οθόνη σας.
Έτσι, για παράδειγμα, θα μπορούσε να είναι μια πεδίο κειμένου, θα μπορούσε να είναι μια ετικέτα,
θα μπορούσε να είναι ένα κουτί ελέγχους.
Έτσι είναι πολλών διαφορετικών τύπων απόψεων.
Έτσι τώρα έχουμε προθέσεις, και αυτό είναι ένα μήνυμα
ότι έχει περάσει σε άλλη δραστηριότητα.
Και αυτοί περιέχουν πληροφορίες σχετικά με τι θέλετε αυτή η δραστηριότητα να εκτελέσει.
Τέλος, έχουμε το αρχείο διακήρυξης, και ότι
είναι ένα αρχείο XML που δίνει στο τηλέφωνό σας όλες οι πληροφορίες σχετικά με την εφαρμογή σας.
Έτσι ώστε να περιλαμβάνει την έκδοση, και οι δραστηριότητες που θα έχετε.
>> Εντάξει, ας ξεκινήσουμε.
Έτσι θα πάμε να είναι χρησιμοποιώντας το Android Studio.
Έτσι, αν εσείς έχετε ήδη εγκατασταθεί, μη διστάσετε να ακολουθήσει μαζί.
Θα προσπαθήσουμε και να ξεκινήσει πάλι από το μηδέν.
Και έτσι Πάω να δοκιμάσετε και να δημιουργήσει ένα νέο έργο.
Και Πάω να καλέσετε το έργο μου Android 101.
Και εδώ βάλαμε το όνομα του έργο στον τομέα όνομα της εφαρμογής.
>> Εταιρεία τομέα, δεν το κάνετε πραγματικά πρέπει να ανησυχείτε για αυτό.
Αυτό είναι ακριβώς το πώς το Android προσδιορίζει την αίτησή σας.
Έτσι έχετε ένα domain name, μπορείτε να πληκτρολογήσετε στο όνομα του τομέα σας μέσα από εκεί.
Αλλά αν δεν το κάνετε, μπορείτε να αισθάνονται ελεύθερα να πληκτρολογήσετε ό, τι θέλετε.
Εδώ, λοιπόν, απλά πληκτρολογήστε frederickw.com.
>> Και στη συνέχεια, τελικά, μπορώ να επιλέξω όπου Θέλω να αποθηκεύσετε το έργο μου σε.
Και Πάω να επιλέξει μόνο την επιφάνεια εργασίας μου.
Έτσι, οι χρήστες, Frederick Widjaja, και επιφάνεια εργασίας.
ΟΚ.
Στη συνέχεια, κάντε κλικ στο κουμπί Επόμενο.
Εδώ, θα πάω να επιλέξετε το ελάχιστη API για να υποστηριχθεί.
Έτσι, σε αυτή την περίπτωση, είμαι πρόκειται να επιλέξουν API 15.
Και αυτό είναι καλό, αν έχετε πραγματικά μόνο επιλέξουν 4.4 που είναι το τελευταίο API.
Ή 5, στην πραγματικότητα.
Στη συνέχεια, όμως το μόνο που χρειάζεται να ανησυχείτε για το οποίο τηλέφωνα είστε πραγματικά την υποστήριξη,
και ποια τηλέφωνα που στοχεύετε.
Κάντε κλικ στο Επόμενο.
>> Εντάξει, έτσι ώστε να έρθει σε αυτό οθόνη, και είμαστε απλά
πρόκειται να χρησιμοποιήσετε δημιουργήσει ένα δραστηριότητα μέσα από αυτό.
Έτσι, Πάω να κάνετε κλικ κενό δραστηριότητα και στη συνέχεια πατήστε Next.
Εμείς πάμε για να το ονομάσουμε κύριο δραστηριότητα, νομίζω ότι είναι μια χαρά.
Απλά πρόκειται να την ονομάσω, πατήστε Finish εδώ.
Περιμένετε να φορτώσει, και εκεί πάμε.
>> Έτσι, εδώ βλέπουμε τρεις διαφορετικούς φακέλους.
Έχουμε το δηλωτικό φάκελο που περιέχει πρόδηλο μας.
Αν το ανοίξετε, θα δούμε το πακέτο μας.
Ή πώς το Android εντοπίζει αίτησή σας
και τότε έχουμε αυτό ετικέτα εφαρμογή, η οποία
περιέχει τον τίτλο της εφαρμογής μας καθώς και το εικονίδιο για την εφαρμογή.
>> Μπορούμε να τρέχουμε αυτό ευθεία εφαρμογή.
Γιατί λοιπόν να μην προσπαθούμε να το κάνουμε αυτό;
Πάω να χρησιμοποιήσετε Genymotion.
Εάν έφερε το δικό σας τηλέφωνο, μπορείτε να συνδέουν το επάνω και να τρέξει, αν θέλετε να.
Αλλά είμαι απλώς πρόκειται να χρησιμοποιήσετε ένα εξομοιωτή, και εγώ είμαι πρόκειται να ξεκινήσει αυτό.
Ooh.
Λοιπόν νομίζω ότι είναι Θα πάρει λίγο χρόνο,
έτσι νομίζω ότι θα έχουμε μόλις πάρει κατ 'ευθείαν σε εξηγεί περισσότερα για αυτό.
Έτσι, εδώ έχουμε τον κατάλογο Java, ή όπου περιέχονται τα αρχεία προέλευσης.
Εδώ έχουμε την ίδια την κύρια δραστηριότητα.
Μπορείτε να δείτε ότι επεκτείνει τις δραστηριότητες της τάξης.
Έτσι, η κύρια δραστηριότητα μας είναι μια οθόνη που θα είναι κατά την εφαρμογή μας.
Και τότε εδώ θα παρατηρήσετε ότι ένας αριθμός των λειτουργιών είναι που δημιουργούνται αυτόματα για εμάς.
Έχουμε τη λειτουργία onCreate, και ότι θα κληθεί whenever--
Φοιτητής: Σας πειράζει καθιστώντας το κείμενο μεγαλύτερο;
FRED Widjaja: Εντάξει, σίγουρα.
Θα προσπαθήσω και να αυξήσει το μέγεθος της γραμματοσειράς.
Σκεφτείτε ότι πρέπει να είναι καλό.
Αυτό είναι καλό;
>> Φοιτητής: Λίγο υψηλότερη, όπως 20 ή κάτι τέτοιο.
>> FRED Widjaja: 20;
ΟΚ.
Εντάξει, εντάξει.
Έτσι, εδώ έχουμε onCreate μέθοδος που θα μπορούσε
να κληθεί όταν δραστηριότητα μας δημιουργείται στο [? δείχνουν?].
Έχουμε το onCreateOptionsMenu, και θα
δείτε ότι υπάρχει πραγματικά μια γραμμή δράσης, και, στη συνέχεια,
μπορούμε να προσθέσουμε ορισμένα στοιχεία μενού σε αυτό.
Και τότε εδώ έχουμε το onOptionsItemSelected.
Έτσι, αυτό είναι σαν ακροατής εκδήλωση, έτσι κάθε φορά που μια επιλογή στο μπαρ δράση μας
χτυπιέται, αυτό λειτουργία θα ονομάζεται,
και θα πρέπει να περάσει με ένα συγκεκριμένου στοιχείου που έγινε κλικ.
>> Εντάξει, Πάω να see-- ότι δεν λειτουργεί καλά.
Ας προσπαθήσουμε και να αρχίσει.
Ω Θεέ μου.
ΟΚ.
Αυτό είναι ανησυχητικό.
Εντάξει, έτσι κι αλλιώς.
Εδώ έχουμε τη διάταξη για την ίδια δραστηριότητα μας.
Αυτή είναι η κύρια δραστηριότητά μας, και εδώ παρατηρούμε ότι υπάρχει η γραμμή δράσης.
Και τότε έχουμε αυτό γεια ετικέτα κόσμο, και μπορούμε πραγματικά
επεξεργαστείτε το κείμενο εδώ.
Αν πάτε και κύλισης μέχρι το Hello World,
μπορούμε να την αλλάξουμε σε ό, τι θέλουμε.
Για παράδειγμα, θα μπορούσε να είναι, Γεια εκεί.
Καλώς ήρθατε.
Και εκεί θα πάμε, αυτό αλλάζει.
Ω Θεέ μου.
Αυτό το στυλ δεν λειτουργεί.
Εντάξει, αυτό είναι ανησυχητικό.
Εντάξει, έτσι κι αλλιώς, μπορούμε να προχωρήσουμε χωρίς αυτό.
Έτσι για τώρα, ας προσπαθήσουμε και κάνει κάποια πραγματικά βασικά πράγματα.
Έτσι, εδώ θα έχουμε ετικέτα, και στη συνέχεια είμαστε
πρόκειται να έχει ένα κείμενο view-- Λυπούμαστε, αλλά δεν είναι μια προβολή κειμένου,
θα πάμε να έχουν ένα κείμενο επεξεργασίας.
Και αυτό είναι ένα συστατικό για να πληκτρολογήσετε και πράγματα.
Έτσι έχουμε ένα απλό κείμενο, και στη συνέχεια, εμείς απλά το προσθέσετε στο περιβάλλον μας.
>> Εδώ, θέλω να προσθέσω, επίσης, κάποιο περιθώριο στην κορυφή, έτσι ώστε να φαίνεται καλύτερο.
Έτσι θα πάμε να πάει για να το ιδιότητες, και στη συνέχεια στο επάνω περιθώριο,
θα πάμε να προσθέσετε σε 20 ΑΣ.
Μέχρι τώρα, οι ΑΣ είναι μόνο ένα μονάδα μέτρησης στο Android,
και στέκονται για την πυκνότητα ανεξάρτητες εικονοστοιχεία.
Έτσι, όπως ίσως γνωρίζετε, το Android, υπάρχει πολλούς διαφορετικούς τύπους οθονών
και στη συνέχεια έχουν διαφορετικές πυκνότητες οθόνη.
Έτσι, εδώ είναι ακριβώς πρόκειται να είναι πυκνότητα pixel ανεξάρτητο,
γι 'αυτό πρόκειται να είναι η ίδια σε όλες τις οθόνες.
>> Πηγαίνοντας να επεκτείνει αυτό το κείμενο να επεξεργαστείτε, και τότε είμαι επίσης πρόκειται να προσθέσετε ένα κουμπί.
Και αυτό πρόκειται να πούμε, εντάξει.
20 ΑΣ.
ΟΚ.
Μέχρι τώρα έχουμε τρεις διαφορετικές συνιστώσες.
Και ο τρόπος που μπορούμε να αναφερθούμε αυτά στην κύρια κατηγορία δραστηριότητας μας
είναι με τη χρήση αυτής της μεθόδου ονομάζεται findViewByID.
Έτσι, Πάω να καθορίσει ορισμένα πεδία.
Έτσι έχουμε στην TextView, οπότε ας πούμε helloText.
Και τότε, αν είστε με τη χρήση του Android Studio, μπορείτε να χρησιμοποιήσετε τον εναλλακτικό συντόμευση,
εισάγετε.
Και κάντε κλικ στο κουμπί Εισαγωγή Τάξης για την αυτόματη εισάγετε τις αντίστοιχες τάξεις
ότι χρειαζόμαστε.
Και τότε εδώ Πάω να προσθέσετε ένα αναγνωριστικό για να Αυτό TextView και αποκαλούν text_hello.
Τώρα που έχουμε ορίσει ένα αναγνωριστικό για αυτό το TextView,
μπορούμε να χρησιμοποιήσουμε αυτό να αναφερθώ στην TextView που μόλις οριστεί.
Έτσι helloText ισούται TextView findViewByID,
και στη συνέχεια θα προσδιορίζει το αναγνωριστικό που θέλουμε, το οποίο είναι r.ID.text_hello.
>> Έτσι, αυτό είναι πολύ παρόμοια με JavaScript και jQuery, όπου μπορούμε πραγματικά μόνο
αναφέρεται σε ορισμένα στοιχεία στη διάταξη μόνο
χρησιμοποιώντας το αναγνωριστικό που έχουμε καθορίσει.
Έτσι, σε γενικές γραμμές, να έχουν πρόσβαση σε ένα συγκεκριμένο αντικείμενο ή σε ένα ορισμένο πεδίο
στο layout μας, θα πάμε να έχουν για να χρησιμοποιήσετε αυτήν τη μέθοδο findViewByID.
Και μετά θα πάμε να κάνουμε το ίδιο πράγματα για τα άλλα δύο στοιχεία.
Εδώ, θα ήθελα να προσθέστε το text_name ταυτότητας.
Ναι.
Καθώς και για αυτό.
Button_ok.
>> Τώρα αυτό που θέλω να κάνω αυτό είναι όταν πατάμε το κουμπί ΟΚ,
και έχουμε εισάγεται κάποιο είδος του όνομα στο πεδίο κειμένου,
τότε πρόκειται για την ενημέρωση αυτή ετικέτα να πω, γεια, το όνομα, ευπρόσδεκτη.
Έτσι, πίσω στο κεντρικό μας Η κατηγορία δραστηριότητας, είμαστε
Επίσης, πρόκειται να προσπαθήσω και να υποβάλει στο εκείνα τα στοιχεία που πρέπει να βρούμε.
>> Έτσι έχουμε την EditText nameText.
Ωχ.
Εισάγετε και αναπληρωματικών, κλάση εισαγωγής.
Και τότε επίσης το πλήκτρο ΟΚ.
Ομοίως, θα πάμε να κάνουν το ίδιο πράγμα εδώ.
nameText ισούται EditText findViewByID, r.ID.text_name.
Και στη συνέχεια το πλήκτρο ΟΚ.
findViewByID, r.ID, και στη συνέχεια button_ok.
>> Εντάξει, έτσι τώρα έχουμε και τα τρία στοιχεία που θέλουμε να αναφερθώ.
Έτσι, τώρα Πάω να επισυνάψετε ένα Κάνοντας κλικ στο κουμπί ακροατή μας
να ακούσουν για τα κλικ των χρηστών.
Σε ότι εμείς απλά χρησιμοποιήστε το setOnClickListener εκδήλωση.
Τώρα, εδώ λέει χρειαζόμαστε να καθορίσετε setOnClickListener,
και μπορείτε να το κάνετε αυτό με απλά έχοντας μια νέα onClickListener, και πατήστε Enter.
>> Και τότε έχετε αυτό το ανώνυμο τάξη, ή ανώνυμα αντικείμενο.
Και έχουμε επίσης αυτό το onClick μέθοδο, και αυτό είναι βασικά
τι πρόκειται να κληθεί όταν πατηθεί το κουμπί μας.
>> Μέχρι εδώ, θέλω να πάρω το όνομα που είχε εισαχθεί σε ένα πεδίο κειμένου πρώτα έτσι
Όνομα String ισούται με nameText.getText ().
Και πάλι, αυτό είναι σαν το Σύνταξη της Java για την παραπομπή
να λειτουργεί μέσα στο αντικείμενο.
Έτσι nameText.getText, και τότε είμαστε πρόκειται να το μετατρέψει σε μια σειρά.
Τώρα έχουμε το όνομα που ήταν εισαγωγή από το χρήστη.
>> Και μετά θα πάμε να δημιουργήσει μια νέα σειρά,
γι 'αυτό πρόκειται να ονομάζεται γεια.
Πάω να πω, γεια, το όνομα, ευπρόσδεκτη.
Και, τέλος, θέλετε για την ενημέρωση του helloText.
Έτσι για να το κάνουμε αυτό, απλώς καλέστε helloText.setText (γεια).
ΟΚ.
Ωχ.
>> Πάω να προσπαθήσουμε και να εκτελέσετε ξανά το πρόγραμμα Genymotion μια τελευταία φορά και να δούμε αν αυτό δουλεύει.
Αν δεν το κάνει, είναι εντελώς καλά.
ΟΚ.
Έτσι υποθέτω ότι δεν λειτουργεί.
Στην πραγματικότητα, επιτρέψτε μου να προσπαθήσω και να το κάνουμε αυτό.
Θα μπορούσε να είναι αυτό.
Genymotion.
ΟΚ.
Εντάξει.
Ναι, λειτουργεί.
ΟΚ.
Αυτό ήταν τρομακτικό.
ΟΚ.
Δεν εννοούσα να το κάνουμε αυτό.
Εντάξει, έτσι έχουμε αυτό το Android emulator.
Επιτρέψτε μου να απενεργοποιήσετε αυτή την επιλογή.
Έτσι έχουμε το Android μας emulator.
Έτσι θα πάμε να προσπαθήσουμε και εκτελέσετε αυτό το app που κάναμε.
Απλά πρόκειται να κάνετε κλικ στο κουμπί Play, και πρόκειται να πω, περιμένοντας ADB.
Ω, ο άνθρωπος.
Επανεκκίνηση.
Εντάξει, υποθέτω ότι αυτό εξακολουθεί να μην λειτουργεί.
Εντάξει, Nevermind, τότε.
Αυτό θα είναι κρίμα.
Αλλά ας πούμε ότι θέλουμε για να δημιουργήσετε μια νέα δραστηριότητα,
και θα πάμε να έχουν μια εικόνα στην εν λόγω δραστηριότητα.
Για να το κάνουμε αυτό, μπορούμε απλά κάντε κλικ Αυτό το αρχείο, και στη συνέχεια Νέο.
Και στη συνέχεια, εδώ μπορούμε να επιλέξουμε Δραστηριότητα, και στη συνέχεια Λευκά δραστηριότητα.
Εδώ, θα πάμε για να καλέσετε Είναι ίσως CatActivity.
>> Εντάξει, έτσι και τώρα παράγει δύο άλλα αρχεία.
Ένα ονομάζεται activity_cat, και η άλλη
ονομάζεται catActivity, η οποία είναι μια τάξη.
Ας πούμε ότι θέλουμε να προσθέσουμε μια εικόνα μιας γάτας εδώ.
Έτσι, όταν το κάνετε αυτό, θα πάμε να χρησιμοποιήσετε την κλάση ImageView.
Εμείς πάμε για να το προσθέσετε στο εδώ.
Και στη συνέχεια, ορίστε το περιθώριο να είναι 20 DP.
>> Και τώρα θα πάμε να βρούμε μια εικόνα μιας γάτας στο διαδίκτυο.
Ας δούμε λοιπόν.
Cat.
ΟΚ.
Υποθέτω ότι αυτό είναι μια χαρά.
ΟΚ.
Έτσι τώρα έχουμε την εικόνα μας.
Έτσι θα πάμε να προσθέσετε αυτό στο έργο μας.
Μπορεί να κάνει αυτό με το δικαίωμα κλικ, και εμείς then--
μπορεί πραγματικά να ανοίξει μόνο αυτό, πάει λήψεις, συγγνώμη, επιφάνεια εργασίας.
Πηγαίνοντας να προσπαθήσουμε και να το βρείτε.
Cat.
Ακριβώς εδώ.
Πάω να το αντιγράψετε στο φάκελο μου.
Τώρα, πρόκειται να με ρωτήσεις μερικές επιλογές.
Τώρα, θέλω μόνο αυτό να είναι στο σχεδιάσιμα φάκελο,
και ότι πρόκειται να είναι για όλους διαφορετικές αναλύσεις οθόνης.
Εναλλακτικά, μπορούμε στην πραγματικότητα απλά επιλέξτε
η οποία ανάλυση οθόνης σας θέλουν αυτή την εικόνα να είναι.
Έτσι θα επιλέξετε σχεδιάσιμα φάκελο, κάντε κλικ στο OK.
Απλά πρόκειται να το ονομάσετε cat.jpg.
>> Εντάξει, ναι, τώρα έχει προστεθεί σε προβολή της εικόνας μας.
θα πάμε να πρέπει να χρησιμοποιήσετε Αυτή η πηγή ακριβώς εδώ,
και τότε μπορούμε να χρησιμοποιήσουμε αυτό το dot dot dot κουμπί, και επιλέξτε την εικόνα της γάτας.
ΟΚ.
Έτσι, τώρα θέλω να κάνω αυτό, όπως ότι είναι ακριβώς το σωστό μέγεθος.
Έτσι, Πάω να επιλέξετε αυτό το προσαρμόσει δείτε την επιλογή όρια εδώ,
και ότι αυτόματα ορίζει ότι στο σωστό μέγεθος.
ΟΚ.
Τώρα, για να ξεκινήσει πραγματικά αυτό δραστηριότητα από την προηγούμενη δραστηριότητα μας,
θα πάμε να πρέπει να χρησιμοποιήσετε κάτι που ονομάζεται πρόθεση.
Ας πούμε ότι είμαι πρόκειται να προσθέσετε ένα άλλο κουμπί που ξεκινά τη δραστηριότητα.
Πάω να το ανεβάσετε εδώ, ακριβώς εδώ.
Και στη συνέχεια, πρόκειται να έχουν το κείμενο να το ενεργοποιήσετε.
Ωχ.
ΟΚ.
>> Τώρα, πώς μπορούμε πραγματικά να ανοίξει το νέα δραστηριότητα μέσα σε αυτή τη δραστηριότητα;
Έτσι ίδια αντιμετώπιση όπως και πριν.
Θα πρέπει να προσθέσετε ένα αναγνωριστικό για αυτό κουμπί, και το αποκαλούν button_activate.
Και στη συνέχεια, η κύρια δραστηριότητα μας, πηγαίνοντας να έχουν αυτό το νέο activateButton Button.
Και τότε, επίσης, να χρησιμοποιήσετε το μέθοδος findViewByID.
activateButton ισούται Button findViewByID r.ID.button_activate.
>> ΟΚ.
Και τότε, επίσης, πρόκειται να προσθέστε σε ένα onClickListener.
Νέα onClickListener.
Και μετά θα πάμε να χρησιμοποιήσετε αυτό το πράγμα που ονομάζεται πρόθεση.
Πρόθεση ισούται με νέα προθέσεων (αυτό).
Και στη συνέχεια το όνομα του δραστηριότητα που θέλουμε να εμφανίζονται.
Έτσι, εδώ σε αυτό, θα πάμε να έχουν catActivity.class.
Λυπάμαι.
Εμείς πάμε να πρέπει να προσδιορίζει @ MainActivity.this.
Έτσι τώρα η .Το ακίνητο αναφέρεται με την τρέχουσα περίπτωση του αντικειμένου
η ίδια.
ΟΚ.
Μέχρι αυτό το σημείο, οποιεσδήποτε ερωτήσεις;
Όλα καλά;
Εντάξει.
>> Και στη συνέχεια, αν θέλετε να ξεκινήσετε η δραστηριότητα, είναι αρκετά απλό.
Εμείς απλά καλέστε την ο μέθοδος startActivity.
Και τότε περνάμε στην πρόθεση αντικείμενο που έχουμε μόλις οριστεί.
Δυστυχώς, εμείς δεν μπορεί να δείξει πραγματικά αυτό.
Ήλπιζα ότι μπορούμε και τρέχουμε αυτό και το δείχνουν μαζί στο σεμινάριο,
αλλά, δυστυχώς, όχι.
Ω, ο άνθρωπος.
Μάλιστα.
Ω, θα πάμε για να προσπαθήσουμε και να σκοτώσουν ATB.exe.
ΟΚ.
Επανεκκίνηση.
Μήπως αυτό το έργο;
Ω, εντάξει.
Έτσι, τώρα είναι στην πραγματικότητα κατάρτιση.
Ω.
Δυστυχώς, δεν υπάρχει Δεν συσκευές που τρέχουν.
Ας προσπαθήσουμε και να επανεκκινήσετε τον εξομοιωτή μου.
Αχ, εκεί θα πάμε.
Εμφανίστηκε.
ΟΚ.
Έτσι, Πάω να ξεκινήσει μου app για το Android μου εξομοιωτή.
Και έχουμε τα πράγματα ότι ορίσαμε προ ολίγου.
Έτσι έχουμε την ετικέτα, η προβολή κειμένου, Το πεδίο κειμένου, και στη συνέχεια το κουμπί.
Έτσι, Πάω να εισάγετε το όνομά μου εδώ,
και εκεί πάμε, άλλαξε το κείμενο.
Έτσι, αν πληκτρολογήσετε Foo, είναι πρόκειται να αλλάξει στο Foo.
>> Και αν κάνω κλικ το Κουμπί Ενεργοποίηση, η οποία
έχουμε συνδέονται με την κυκλοφορία στην πραγματικότητα μια νέα δραστηριότητα, ελπίζουμε ότι αυτό θα λειτουργήσει,
εκεί πάμε.
Εισάγει τη νέα δραστηριότητα.
Για να πάτε πίσω, μπορούμε να πατήσετε το κουμπί Πίσω δεξιά εδώ.
Ή όχι.
Ω, εκεί θα πάμε.
Ωχ.
Αυτό ήταν κακό.
ΟΚ.
>> Έτσι, τώρα που έχουμε εφαρμόσει κάποια βασικά πράγματα στο Android,
μπορούμε να προσπαθήσουμε και να κάνουμε κάποιες πιο περίπλοκα πράγματα.
Έτσι το πρώτο, ας προσπαθήσουμε και να περάσει μηνύματα από τη μία δραστηριότητα στην άλλη.
Ας πούμε ότι θέλουμε να περάσει σε ένα όνομα από την κύρια δραστηριότητα
με τη δραστηριότητα της γάτας.
Και το όνομα θα είναι ανακτώνται από αυτό το nameText.
>> Εντάξει, έτσι ώστε πρώτα, θα πάμε να ανακτήσετε το όνομα εδώ.
Όνομα String ισούται nameText.getText (). toString ().
ΟΚ.
Και τότε μπορούμε να χρησιμοποιήσουμε αυτό το πράγμα ονομάζεται intent.putExtra (όνομα),
και τότε πράγματι επιθυμεί επίσης ένα κλειδί για αυτό το επιπλέον πεδίο.
>> Έτσι, Πάω να καθορίσει μια νέα κλειδί, θα το ονομάσουμε EXTRA_NAME.
Έτσι, Πάω να χρησιμοποιήσετε αυτό κλειδί, CatActivity.EXTRA_NAME,
και στη συνέχεια να περάσει στο ίδιο το όνομα.
>> Εντάξει, έτσι τώρα μπορούμε πραγματικά να ανακτήσετε μέσα στο νέο CatActivity.
Για να γίνει αυτό, θα πρέπει να χρησιμοποιήσετε το πρόθεση ισούται με τη μέθοδο getIntent.
Έτσι τώρα πρόκειται να ανακτήσετε την πρόθεση ότι
χρησιμοποιήθηκε για να καλέσετε αυτή τη νέα δραστηριότητα.
Έτσι, εάν θέλετε να ανακτήσετε το string ότι βάζουμε πραγματικά στο εσωτερικό του πρόθεση,
μπορείτε να χρησιμοποιήσετε ένα intent.getStringExtra και στη συνέχεια να περάσει στην ίδια κατηγορία,
>> Εντάξει, έτσι και τώρα ας πούμε εμείς σας θέλετε να αλλάξετε αυτό το πεδίο.
Αλλάξτε το πεδίο αυτό εδώ.
Και ας κάνουμε τη γραμματοσειρά μέγεθος του εν λόγω τομέα μεγαλύτερο.
Ας πούμε ότι θέλω αυτό να είναι 20 DP.
ΟΚ.
Και Πάω να προσθέσετε μια Αναγνωριστικό για αυτό TextView,
και πάω να το ονομάσουμε text_cat.
Λυπάμαι.
>> Και πίσω στο CatActivity, ίδια αντιμετώπιση όπως και πριν.
Εμείς πάμε για να καθορίσει ορισμένα πεδία.
Εδώ πρόκειται να είναι ένα TextView catText.
Και τότε catText ισούται TextView findViewByID, r.ID.text_cat.
ΟΚ.
Και τότε πάλι εδώ, είμαι πρόκειται να θέσει το σωστό κείμενο
μετά ανακτούμε για αυτό από την πρόθεση.
setText (όνομα).
>> Εντάξει, ας το δοκιμάσουμε έξω.
Κάντε κλικ στο κουμπί Play.
Πάω να χρησιμοποιούν την ίδια συσκευή.
Πίσω στο εδώ.
Ας πούμε ότι εγώ δεν input-- αν δεν καθορίσετε οποιοδήποτε όνομα,
Ας δούμε τι θα συμβεί.
Μέχρι τώρα δεν υπάρχει τίποτα που εμφανίζεται.
Έτσι, πάμε πίσω και να εισαγάγει το όνομά μας, είναι ακριβώς πρόκειται να πω Φρεντ.
Έτσι, μπορούμε να περάσουμε πραγματικά μηνύματα από τη μία δραστηριότητα στην άλλη.
ΟΚ.
>> Έτσι, υπάρχει ένα σωρό άλλες απόψεις ότι μπορείτε να χρησιμοποιήσετε στο Android.
Έτσι τώρα έχουμε γραμμές προόδου, έχουμε προβολές λίστας, έχουμε τα κουμπιά εναλλαγής,
και αν πραγματικά ήθελε για να μάθετε περισσότερα γι 'αυτό,
μπορείτε να επισκεφθείτε πραγματικά αυτές τις ιστοσελίδες.
Περιέχουν πολλές διαφορετικές πηγές.
Έτσι, για παράδειγμα, του ΑΡΙ καθοδηγήσει σωστά εδώ στην πραγματικότητα
σας δίνει κάποια παραδείγματα κώδικα για ορισμένα χαρακτηριστικά στο Android βιβλιοθήκη.
>> Και μερικά tutorials που βρήκα χρήσιμο όταν μαθαίνουν για το Android.
Αυτό είναι η ίδια η επίσημη φροντιστήριο, και, επίσης, αυτό το άλλο φροντιστήριο εδώ.
Και τέλος, μπορείτε πραγματικά να χρησιμοποιούν διαφορετικές βιβλιοθήκες
για την εφαρμογή του Android σας.
Τώρα, αυτά στην πραγματικότητα επεκτείνει η λειτουργικότητα της εφαρμογής σας
χωρίς να χρειάζεται να πραγματικά γράψει μεγάλο μέρος του κώδικα.
Το μειονέκτημα είναι, Φυσικά, αυτό που πραγματικά
πρέπει να μάθουν τις βιβλιοθήκες σας.
>> Έτσι, για παράδειγμα, αν θέλετε να κάνετε τη χρήση του Dropbox σύννεφο τεχνολογία,
τότε μπορείτε να χρησιμοποιήσετε το Dropbox API.
Παρόμοια με το Facebook API.
Και έπειτα υπάρχει πραγματικά λίγα διάφορες άλλες διάφορες βιβλιοθήκες
που μπορείτε να χρησιμοποιήσετε.
Εάν προσπαθείτε να πάρετε, όπως, JSON από μια συγκεκριμένη ιστοσελίδα,
τότε νομίζω ότι η Google JSON βιβλιοθήκη θα ήταν αρκετά χρήσιμη.
Μέχρι τώρα, η οποία μετατρέπει το JSON μορφοποιημένο κείμενο σε ένα αντικείμενο Java,
και το αντίστροφο.
>> Και έπειτα υπάρχει και εκ των υστέρων εξοπλισμού Πικάσο.
Και αυτό είναι, αν θέλετε να use-- αυτό είναι για αν χρησιμοποιείτε ένα υπόλοιπο API.
Και Πικάσο, αν είστε με τη χρήση εικόνων για την εφαρμογή του Android σας.
Εντάξει.
Σας ευχαριστώ πολύ, και να διασκεδάσουν κωδικοποίηση.