>> Фред Widjaja: Хорошо.
Привет, всем.
Спасибо приветствуются присоединиться ко мне на этом семинаре.
Итак, сегодня мы будем говорить о Как разрабатывать приложения для Android,
и, в частности, мы собираемся быть с помощью Android Студия в порядке
развивать наши приложения.
>> Итак, как вы все могли знать.
Android использует Java, и поэтому мы будем переживает краткого введения
на самом Java.
Так что я знаю, что многие из вас только опыт программирования на С. Так,
это совершенно нормально, и это потому что Java очень, очень
аналогично C, с небольшими различиями.
>> Таким образом, типы в Java являются фиксируется в байтах.
Таким образом, в С, то шорты и жаждет, и они
отличаются количеством битов от машины к машине.
В Java, это уже не установлен в качестве стандарта.
Так байты имеют восемь бит, шорты есть 16 бита, и так далее и так далее.
У нас также есть символы, логические, а также плавает и парном разряде.
Так как вы программировать на Java, это очень похоже.
Так, например, у нас есть для петель и в то время петель,
и если и остальное отчетность точно так же, как вы могли бы сделать в C,
>> Ладно, так Особенность Java является то, что объектно-ориентированный.
Теперь, что такое объекты?
Так что, если вы посмотрите на вещи вокруг вас, вы будете
заметить, что каждый объекта реального мира имеет две общие характеристики.
И это в том, что они имеют состояние и у них есть какие-то поведения.
>> Так, например, собак бы государства, которые
: имя, цвет, порода, может быть, если собака голодна или нет.
А некоторые модели поведения, что собаки будут иметь будет лаять или виляя хвостом,
или извлечения мяч.
Итак, мы можем также применить это к неодушевленным предметам.
Так, например, автомобили, они имеют модель, год выпуска, максимальная скорость,
и так далее, и так далее.
И у них есть некоторое поведение.
Например, ускорение или торможении, или собирается в обратном направлении.
>> Так объекты Java попыток моделирования это при наличии поля и методы.
Так поля государства, которые объект Java может иметь,
в то время как метод будет представлять поведение, которое объект Java будет иметь.
Поэтому, когда я говорю методы и поля, я действительно
просто означать, переменные и функции.
Они точно так же, за исключением того, что они применяются к конкретному объекту.
>> Итак, переходим к классам.
Классы Java похожи Чертежи для объекта.
Они говорят вам, что методы он имеет то, что он имеет поля,
и даже здесь, у нас есть что-то называемые модификаторы доступа, которые
мы получим в то время.
Таким образом, чтобы объявить класс Java, это очень похожи по синтаксису к C структуры.
>> Здесь мы начинаем с автомобиля класса общественности, а то у нас открывающая фигурная скобка, а затем
некоторое количество полей, которые Вы хотите, чтобы объект есть.
А потом вот у нас есть некоторые методы, и мы также имеем конструктор объекта.
Теперь то, что этот конструктор объекта делает это говорит объекту,
ОК, я хочу, чтобы инициализировать это объект какого-то поля.
>> Так вот, мы хотим, чтобы каждый автомобиль иметь модель и год.
Поэтому у нас есть конструктор только специально
для модели и года, и Это позволит создать модельное поле
до определенного значения, и поле году.
>> Теперь о доступе модификаторы я имел в виду.
Здесь мы имеем общественности и частные модификаторы доступа.
Таким образом, вы можете думать об этом как RWX в ваших каталогах.
Таким образом, они позволяют определенных людей читать, и иметь доступ
по этим полям и методам.
>> Так что, если я скажу, что модель и год и скорость являются частными,
это означает, что другие объекты не могут пытаться получить доступ к поля этого объекта
Есть частные.
Но когда я установил доступ Модификатор быть публичным,
Теперь это означает, что другие объекты могут свободно обращаться и даже
использовали методы, которые определены здесь.
>> Так что это основной Объект автомобилей, что у меня есть.
У нас есть ускорить, переломит, и методы getSpeed.
До этого момента, это все ясно Объекты Java и как их объявлять?
Круто, все в порядке.
Так что если вы хотите использовать Java объект в самой программе,
то мы можем использовать это Новый конструктор автомобилей.
Так вот, мы говорим, что мы хотим объявить Новый объект, который имеет тип автомобиля.
И здесь это применение модель и год выпуска,
которые мы определили в этот объект прямо здесь.
>> Так что это еще один объекта, если вы заметили.
Это класс для Сама главная программа.
И у нас есть эта PSVM или общественного статической силы основных, функции,
и его отправной точкой вашей программы,
аналогично основной функция в вашей программе C.
Здесь мы можем получить доступ и использовать функции объекта в
используя точку, а затем Имя функции обозначения.
И мы можем даже указать некоторые аргументы или параметры
Для этой функции.
>> Итак, переходим к наследованию.
Так объектами реального мира, может одни и те же характеристики.
Так, например, существует Различные типы велосипедов.
Например, горный велосипед, Велосипеды городские или тандемные велосипеды.
Поэтому они должны это общее свойство, что велосипед.
>> И так велосипеды могут иметь два колеса и они могут иметь ручку, может быть, даже
задний фонарь или что-то подобное.
Так Java дает нам это власть представляют объекты
которые имеют некий общий характеристики по наследству.
Теперь, что наследование делает, это проходит на полях и методы объекта
на дочернем объекте.
>> Так, например, если есть автомобиль, и он имеет
состояние имеющий четыре Колеса и один руль,
то мы можем передать это на некоторые различные типы автомобилей.
Например, у нас есть седан, спортивный автомобиль, и внедорожник.
Теперь, эти три различных типы автомобилей все равно бы
четыре колеса и один руль, но потом они
может иметь определенные специальные характеристики,
таких как имеющая пять мест и для седана, например.
>> Таким образом, чтобы воспользоваться этой наследования функция, мы используем это расширяет ключевое слово.
Так что помните, обратно к машине возразить, что я определил ранее.
Теперь я определить объект седан.
Так что это объект Седан будет иметь же поля и функции или методы,
что автомобиль будет иметь.
Но тогда, здесь я указываю некоторые дополнительные функции,
Например, множество Количество пассажиров
и количество пассажиров получить.
>> Здесь вы также можете заметить, что мы можем переопределить методы,
и это означает, что мы просто замена поведение
действовать в некоторых случаях по-разному.
Так, например, я хочу, чтобы установить максимальную скорость для нашего автомобиля.
А для этого, я проверяю ли это Скорость будет идти на максимальной скорости.
А если это не так, то я называю супер класс "ускорить метод.
Так что это super.accelerate () звонки супер класс "ускорить метод.
>> Наконец, мы собираемся говорить об интерфейсах.
Так интерфейсы способ только разоблачить некоторые методы с внешним миром.
Таким образом, они, как стол, Содержание и вы
можете думать о них, как, как файлы C заголовок, просто
как методы с пустыми органов, и они определить, какой объект или класс
должен иметь, или то, что методы объект или класс должен иметь.
>> Так, например, если имеют интерфейс велосипедов,
и имеет три различные методы, а вот если я реализовать этот интерфейс,
то это означает, что этот велосипед необходимо реализовать тех же трех
методы, которые я, определенные в интерфейсе.
>> До этого момента, любые другие вопросы?
Ладно, круто.
Так что это было очень кратким и краткое руководство по Java.
Там это способ больше функций и темы на Java, что вы можете пройти.
Например, существует дженерики, есть типы данных,
Есть даже перечисления и прочее.
Так что если вы хотите узнать больше об этом, сделать следующие ссылки,
и они будут учить вас о них больше.
>> Итак, давайте перейдем к Фактическое мясо семинара,
и что на самом деле Android программирования.
Поэтому, прежде чем мы на самом деле добраться до программирования,
Я хочу говорить о какой-жаргона.
Так деятельность Способ Android, сказать
это единственный экран в приложении.
>> Так, например, если у вас есть Gmail приложения, мы имеем деятельность просматривать электронную почту.
И потом, если вы нажмете уверен, электронная почта, что
будет показан еще один деятельности, где это вид электронной почты деятельности.
И тогда у нас также есть сочинять деятельность, или деятельность редактировать сообщения.
И так деятельность как правило, только один экран
в самом приложении.
>> Теперь, взгляды компоненты, входящие в до экрана, либо самой деятельности.
Так они привлекают уверен, вещь в вашем экране.
Так, например, это может быть текстовое поле, это может быть этикетка,
это может быть окно проверки.
Так что много различных типов взглядов.
Так что теперь у нас есть намерения, и это сообщение
который передается на другой вид деятельности.
И они содержат информацию о том, то, что вы хотите эта деятельность для выполнения.
Наконец, у нас есть Файл манифеста, и что
является XML-файл, который дает телефон Вся информация о вашем приложении.
Так вот включает в себя версию, а мероприятия, которые вы будете иметь.
>> Итак, давайте начнем.
Итак, мы собираемся, чтобы быть с помощью Android Studio.
Так что, если вы, ребята, это уже установлен, не стесняйтесь следовать вдоль.
Мы постараемся начать с нуля.
И поэтому я собираюсь попробовать и создать новый проект.
И я собираюсь позвонить мой проект Android 101.
И здесь мы ставим имя Проект в поле Имя приложения.
>> Домен компании, вы не действительно нужно беспокоиться об этом.
Это просто, как Android идентифицирует приложение.
Так у вас есть доменное имя, вы можете ввести в имени домена внутри там вашем.
Но если вы этого не сделаете, вы можете чувствовать себя бесплатно набрать в все, что вы хотите.
Так вот, я просто наберите в frederickw.com.
>> И вот, наконец, я выбираю, где Я хочу сохранить свой проект в.
И я собираюсь просто выбрать свой рабочий стол.
Таким образом, пользователи, Фредерик Widjaja и рабочий стол.
ОК.
Тогда нажмите кнопку Далее.
Здесь я буду выбирать Минимальная API в поддержке.
Таким образом, в этом случае, я будем выбирать API 15.
И это нормально, если вы на самом деле просто выбрать 4,4, который является последним API.
Или 5, на самом деле.
Но тогда вы просто нужно беспокоиться о какие телефоны вы на самом деле, поддерживающие,
и какие телефоны вы ориентируетесь.
Нажмите кнопку Далее.
>> Итак, мы пришли к этому экраном, и мы просто
собираетесь использовать создать деятельность через это.
Так что я собираюсь нажать пробел деятельность, а затем Далее.
Мы собираемся называть его главным деятельность, я думаю, что это хорошо.
Просто буду называть его, пресс-Finish прямо здесь.
Дождитесь загрузки, и мы идем.
>> Так вот мы замечаем, три в разных папках.
У нас есть явное папку который содержит наш манифест.
Если вы открываете его, мы увидим наш пакет.
Или определяет, как Android приложение
а то у нас это тег приложения, которые
содержит название нашего приложения а также в качестве значка для приложения.
>> Мы можем реально работать в этом Приложение прямой.
Так почему бы нам не попробовать и сделать это?
Я собираюсь использовать Genymotion.
Если вы принесли свой собственный телефон, вы можете связать его и запустить его, если хотите.
Но я просто хочу, чтобы использовать эмулятор, и я собираюсь начать в этом.
Ох.
Ну, я думаю, что это собирается занять некоторое время,
так что я думаю, что мы просто получить прямо в объяснении об этом подробнее.
Так вот у нас есть каталог Java, или где ваши исходные файлы содержатся.
Здесь мы имеем себя основную деятельность.
Вы можете видеть, что это расширяет класс активности.
Таким образом, наша основная деятельность экрана это будет в нашем приложении.
А потом вот мы замечаем, что число функций сгенерированы автоматически для нас.
У нас есть функция OnCreate, и что будет называться whenever--
СТУДЕНТ: Вы не возражаете, что делает текст больше?
Фред Widjaja: Да, конечно.
Я постараюсь, чтобы увеличить размер шрифта.
Думаю, что должно быть хорошо.
Это хорошо?
>> СТУДЕНТ: Просто немного выше, как 20 или что-то.
>> Фред Widjaja: 20?
ОК.
Хорошо, все в порядке.
Так вот у нас OnCreate Метод, который бы
вызывается, когда наша деятельность создается в [? показать?].
У нас есть onCreateOptionsMenu, и мы
видеть, что есть на самом деле Действие бар, а затем
мы можем добавить некоторые пункты меню на нее.
А потом вот у нас есть onOptionsItemSelected.
Так что это, как слушателя событий, так всякий раз, когда выбор в нашем баре действий
щелкнуть это функция будет вызвана,
и он будет принят определенный предмет, что была нажата.
>> Хорошо, я собираюсь see-- что не работает хорошо.
Давайте попробуем начать.
О, Боже.
ОК.
Это вызывает озабоченность.
Итак, в любом случае.
Здесь мы имеем макет для самой нашей деятельности.
Это наша основная деятельность, а здесь мы замечаем, что есть на панели действий.
А то у нас этот привет Мир этикетки, и мы можем на самом деле
редактировать текст прямо здесь.
Если вы идете и прокрутки до Hello World,
мы можем изменить его на то, что мы хотим.
Например, это может быть, Привет там.
Добро пожаловать.
И там мы идем, это меняется.
О, Боже.
Этот стиль не работает.
Хорошо, что это беспокоит.
Хорошо, в любом случае, мы можем двигаться дальше без этого.
Так что сейчас, давайте попробуем сделать некоторые действительно основные вещи.
И вот мы будем иметь этикетки, а затем мы
будет иметь текст view-- извините, не текст зрения,
мы собираемся иметь редактирования текста.
И это компонент для ввода и прочее.
Итак, мы имеем простой текст, а затем мы просто добавим его в наш интерфейс.
>> Здесь я хотел бы также добавить некоторый запас в верхней части так, что он выглядит лучше.
Итак, мы собираемся, чтобы перейти к свойства, а затем в верхнем поле,
мы собираемся добавить в 20 ДПС.
Так что теперь, ДПС просто единица измерения в Android,
и они стоят за плотности независимые пикселей.
Так что, как вы знаете, Android, есть много различных типов экранов
а затем они должны Различные плотности экрана.
Так вот, это просто будет независимая плотность пикселей,
так что это будет то же самое во всех экранах.
>> Переход продлить этот редактировать текст, и то я также собираюсь добавить кнопку.
И это скажет ОК.
20 ДПС.
ОК.
Так что теперь у нас есть три различные компоненты.
И так мы можем обратиться к их в нашем главном классе деятельности
это с помощью этого метода называется findViewByID.
Так что я собираюсь определить некоторые поля.
Таким образом, мы имеем в TextView, так скажем helloText.
И потом, если вы используете Android Studio, Вы можете использовать контекстное очередные,
войти.
И нажмите Импорт класса автоматически импортировать соответствующие классы
что нам нужно.
А потом вот я иду, чтобы добавить идентификатор это TextView и назовите его text_hello.
Теперь, когда мы определили ID для этого TextView,
мы можем использовать это, чтобы обратиться к TextView, что мы только что определили.
Так helloText равно TextView findViewByID,
а затем мы указываем идентификатор, который мы хотим, что r.ID.text_hello.
>> Таким образом, это очень похоже на JavaScript и JQuery, где мы можем на самом деле просто
относятся к определенным элементам в макете просто
с помощью идентификатора, который мы указали.
Таким образом, в целом, для доступа к определенный объект или определенного поля
в нашем макете, вы будете иметь использовать этот метод findViewByID.
И тогда мы будем делать то же самое вещи для других двух элементов.
Здесь я собираюсь добавить ID text_name.
Да.
Так же, как для этого.
Button_ok.
>> Теперь то, что я хочу, чтобы это сделать, это Когда мы нажимаем на кнопку OK,
и мы вводится какой-то имени в текстовое поле,
то это будет обновлять это Этикетка сказать, привет, имя, добро пожаловать.
Итак, вернемся в нашем главном класс деятельности, мы
также собираюсь попробовать и обратитесь к те элементы, которые мы должны найти.
>> Таким образом, мы имеем EditText nameText.
К сожалению.
Введите и альтернативный, класс импорта.
А потом еще и кнопку OK.
Кроме того, мы собираемся сделать то же самое здесь.
nameText равно EditText findViewByID, r.ID.text_name.
А потом кнопку OK.
findViewByID, r.ID, а затем button_ok.
>> Итак, теперь у нас есть все три элементы, которые мы хотим обратиться к.
Так что теперь я собираюсь приложить на кнопку слушателя нашей кнопки
для прослушивания кликов пользователей.
К этому мы используем только setOnClickListener событие.
Теперь, вот это говорю, что мы должны указать setOnClickListener,
и вы можете сделать это, просто имея Новый onClickListener и нажмите Enter.
>> И тогда у вас есть анонимный класс или анонимный объект.
И мы также имеем эту OnClick Метод, и это в основном
то, что он будет называться всякий раз, когда нажата наш кнопки.
>> Так вот, я хочу, чтобы получить имя, был введен в текстовое поле сначала так
Имя Строка равно nameText.getText ().
Опять же, это, как Синтаксис Java для ссылки
на функции в пределах объекта.
Так nameText.getText, а затем мы собирается преобразовать его в строку.
Теперь у нас есть имя, был введен пользователем.
>> А потом мы собираемся создать новую строку,
так что это будет называться привет.
Я собираюсь сказать, привет, имя, добро пожаловать.
И, наконец, вы хотите обновить helloText.
Таким образом, чтобы сделать это, мы просто вызываем helloText.setText (привет).
ОК.
К сожалению.
>> Я собираюсь попробовать и повторно запустить Genymotion один последний раз и посмотреть, если он работает.
Если это не так, это совершенно нормально.
ОК.
Так что я думаю, что это не работает.
На самом деле, позвольте мне попытаться сделать это.
Может быть это.
Genymotion.
ОК.
Хорошо.
Да, это работает.
ОК.
Это было страшно.
ОК.
Я не хотел этого делать.
Итак, у нас есть этот Android эмулятор.
Позвольте мне выключить.
Так у нас есть для Android эмулятора.
Итак, мы собираемся, чтобы попытаться запустить это приложение, что мы сделали.
Просто буду нажмите кнопку воспроизведения, и скажет, ожидая АБР.
О, Боже.
Перезапуск.
Хорошо, я предполагаю, что это до сих пор не работает.
Хорошо, по фигу, то.
это будет жаль.
Но давайте говорить, что мы хотим создать новый вид деятельности,
и мы будем иметь картина в этой деятельности.
Чтобы сделать это, мы можем просто нажмите этот файл, а затем Создать.
И то здесь мы можем выбрать Деятельность, а затем Blank активность.
Здесь мы собираемся называть Может быть, он CatActivity.
>> ОК, так что теперь он генерирует два файла.
Одна из них называется activity_cat, а другой
называется catActivity, который является классом.
Итак, давайте говорить, что мы хотим, чтобы добавить изображение кошки прямо здесь.
Поэтому, когда вы сделаете это, мы собираемся использовать класс ImageView.
Мы собираемся, чтобы добавить его на здесь.
А потом установить поле на 20 DP.
>> И теперь мы собираемся найти изображение кота на интернете.
Итак, давайте посмотрим.
Кат.
ОК.
Я думаю, это нормально.
ОК.
Так что теперь у нас есть изображение.
Итак, мы собираемся добавить это в наш проект.
Можно сделать это по праву щелчок и then-- мы
может на самом деле просто открыть это, перейти загрузок, извините, рабочий стол.
Переход, чтобы попытаться найти его.
Кат.
Прямо здесь.
Я собираюсь скопировать его в мою папку.
Теперь, это будет задавать мне несколько вариантов.
Теперь, я просто хочу, чтобы это находиться в папке растяжимой,
и это будет для всех различных разрешениях экрана.
Кроме того, мы можем на самом деле просто выберите
который Разрешение экрана хочу на эту фотографию, чтобы быть в.
Так собираетесь выбрать холст папку, нажмите кнопку ОК.
Просто буду называть его cat.jpg.
>> Итак, теперь он добавляется в нашей точки зрения изображения.
мы собираемся иметь, чтобы использовать этот источник прямо здесь,
и тогда мы сможем использовать эту Бип-бип точку кнопку и выберите изображение кошки.
ОК.
Так что теперь я хочу сделать так, что это просто правильный размер.
Так что я собираюсь выбрать этот отрегулировать смотреть вариант ограничивает прямо здесь,
и автоматически устанавливает его до нужного размера.
ОК.
Теперь, на самом деле начать в этом деятельность из нашего предыдущего деятельности,
Вы будете иметь, чтобы использовать то, что называется намерение.
Так что давайте говорить, что я собираюсь добавить еще один Кнопка, которая запускает активность.
Я собираюсь добавить его здесь, прямо здесь.
И тогда это будет есть текст, включите его.
К сожалению.
ОК.
>> Теперь, как мы на самом деле открыть новый вид деятельности в рамках этой деятельности?
Так же дело, как и раньше.
Нам нужно добавить идентификатор этого Кнопка, и называют его button_activate.
И тогда в нашей основной деятельности, собирается чтобы эта новая кнопка activateButton.
А потом еще и использовать Метод findViewByID.
activateButton равна кнопку findViewByID r.ID.button_activate.
>> ОК.
И тогда мы также собираемся добавить в onClickListener.
Новый onClickListener.
А потом мы собираемся использовать Это то, что называется намерением.
Намерение равно новый Intent (это).
А потом название деятельность, что мы хотим показать.
Так вот в этом, мы собираемся иметь catActivity.class.
Извините.
Мы собираемся иметь, чтобы укажите @ MainActivity.this.
Так что теперь .this собственности имеет в виду к текущему экземпляру объекта
Сам.
ОК.
До этого момента, все вопросы?
Все хорошо?
Хорошо.
>> И потом, если вы хотите, чтобы начать деятельность, это довольно просто.
Мы просто позвонить Метод startActivity.
И тогда мы проходим в намерениях Объект, который мы только что определили.
К сожалению, мы не могу показать это.
Я надеялся, что мы можем реально работать это и показать его по в семинаре,
но, к сожалению, нет.
О, Боже.
Понимаю.
О, мы собираемся, чтобы попытаться убить ATB.exe.
ОК.
Перезапуск.
Разве это работает?
О, хорошо.
Так что теперь это на самом деле компиляции.
Ох.
К сожалению, есть устройства не работает.
Давайте попробуем перезагрузить эмулятор.
Ах, там мы идем.
Это оказалось.
ОК.
Так что я собираюсь начать мой приложение на моем эмуляторе Android.
И у нас есть вещи, что мы определили только сейчас.
Итак, мы имеем этикетку, вид Текст, текстовое поле, а затем кнопку.
Так что я собираюсь вход мое имя прямо здесь,
и там мы идем, он изменил текст.
Так что, если мы введем в Фу, с это собирается менять в Foo.
>> И если я нажимаю Активировть, что
мы связаны на самом деле запустить новый вид деятельности, мы надеемся, что это будет работать,
там мы идем.
Он запускает новую деятельность.
Чтобы вернуться назад, мы можем нажать Кнопка Назад прямо здесь.
Или нет.
О, там мы идем.
К сожалению.
Это было плохо.
ОК.
>> Так что теперь мы внедрили некоторые основные вещи в Android,
мы можем попробовать и сделать некоторые более сложные вещи.
Итак, сначала давайте попробуем передавать сообщения от одного вида деятельности к другому.
Так что давайте говорить, что мы хотим пройти по Название от основной деятельности
Коту деятельности.
И имя будет извлекается из этой nameText.
>> Итак, во-первых, мы собираемся получить имя прямо здесь.
Имя Строка равно nameText.getText (). ToString ().
ОК.
И тогда мы сможем использовать эту вещь называется intent.putExtra (имя),
а затем он на самом деле хочет ключ для этого дополнительного поля.
>> Так что я собираюсь, чтобы определить новый ключ, мы будем называть его EXTRA_NAME.
Так что я собираюсь использовать это ключ, CatActivity.EXTRA_NAME,
а затем передать в самом названии.
>> ОК, так что теперь мы можем на самом деле получить это в новой CatActivity.
Чтобы сделать это, мы должны использовать Цель равно метод getIntent.
Так что теперь это будет получить умысла
был использован для вызова этой новой деятельности.
Так что если вы хотите получить строку что мы на самом деле положил внутри намерениях,
Вы можете использовать intent.getStringExtra а затем передать в том же ключе,
>> Хорошо, теперь давайте говорить, что мы вас Чтобы изменить это поле.
Изменить это поле прямо здесь.
И давайте сделаем шрифт Размер этой области больше.
Итак, давайте скажем, я хочу, чтобы это было 20 DP.
ОК.
И я собираюсь добавить ID для этого TextView,
и я буду называть его text_cat.
Извините.
>> И еще в CatActivity, То же самое дело, как раньше.
Мы собираемся определить некоторые поля.
Вот это будет TextView catText.
А потом catText равно TextView findViewByID, r.ID.text_cat.
ОК.
А потом обратно сюда, я собирается установить текстовый право
после того как мы получить для это из намерения.
SetText (имя).
>> Итак, давайте попробуем это.
Нажмите на кнопку воспроизведения.
Я собираюсь использовать то же устройство.
Вернуться в здесь.
Так что давайте говорить, что я не input-- если мы не указываем любое имя,
давайте посмотрим, что происходит.
Так что теперь нет ничего, что появляется.
Таким образом мы идем назад и вход наше имя, это просто будет сказать Фред.
Так что мы можем на самом деле передачи сообщений от одного вида деятельности к другому.
ОК.
>> Так что куча других взглядов что вы можете использовать в Android.
Так что теперь у нас есть прогресс баров, у нас есть представления списка, у нас есть кнопки-переключатели,
и если вы действительно хотели, чтобы узнать больше о том,
Вы можете фактически посетить эти веб-страниц.
Они содержат много различных ресурсов.
Так, например, в API направлять прямо здесь на самом деле
дает вам некоторые примеры кода для некоторые особенности в Android библиотеке.
>> И еще несколько учебников я нашел полезным при обучении Android.
Это само по себе официальный учебник, а также это другой учебник прямо здесь.
И, наконец, вы можете на самом деле использовать различные библиотеки
для вашего Android приложения.
Теперь, эти на самом деле продлить функциональность вашего приложения
без действительно написать много кода.
Недостатком является, Конечно, что вы на самом деле
должны научиться библиотекам себя.
>> Так, например, если вы хотите сделать Использование технологии облачных Dropbox,
то вы можете использовать API Dropbox.
Подобные с API Facebook.
А потом там на самом деле мало различные другие различные библиотеки
что вы можете использовать.
Если вы пытаетесь получить, как, JSON из определенного веб-сайта,
то я думаю, Google JSON Библиотека будет довольно полезно.
Так что теперь, что превращает JSON форматированный текст в объект Java,
и наоборот.
>> А тут еще по переоборудованию и Пикассо.
И это, если вы хотите, чтобы use-- это потому что если вы используете API покоя.
И Пикассо, если вы используете изображения для вашего Android приложения.
Хорошо.
Большое спасибо, и получайте удовольствие кодирование.