1 00:00:00,000 --> 00:00:09,620 2 00:00:09,620 --> 00:00:11,550 >> Фред Widjaja: Хорошо. 3 00:00:11,550 --> 00:00:12,600 Привет, всем. 4 00:00:12,600 --> 00:00:19,450 Спасибо приветствуются присоединиться ко мне на этом семинаре. 5 00:00:19,450 --> 00:00:23,130 Итак, сегодня мы будем говорить о Как разрабатывать приложения для Android, 6 00:00:23,130 --> 00:00:26,870 и, в частности, мы собираемся быть с помощью Android Студия в порядке 7 00:00:26,870 --> 00:00:29,490 развивать наши приложения. 8 00:00:29,490 --> 00:00:32,150 >> Итак, как вы все могли знать. 9 00:00:32,150 --> 00:00:36,750 Android использует Java, и поэтому мы будем переживает краткого введения 10 00:00:36,750 --> 00:00:39,860 на самом Java. 11 00:00:39,860 --> 00:00:45,830 Так что я знаю, что многие из вас только опыт программирования на С. Так, 12 00:00:45,830 --> 00:00:48,760 это совершенно нормально, и это потому что Java очень, очень 13 00:00:48,760 --> 00:00:53,750 аналогично C, с небольшими различиями. 14 00:00:53,750 --> 00:01:00,040 >> Таким образом, типы в Java являются фиксируется в байтах. 15 00:01:00,040 --> 00:01:04,290 Таким образом, в С, то шорты и жаждет, и они 16 00:01:04,290 --> 00:01:07,880 отличаются количеством битов от машины к машине. 17 00:01:07,880 --> 00:01:10,990 В Java, это уже не установлен в качестве стандарта. 18 00:01:10,990 --> 00:01:16,320 Так байты имеют восемь бит, шорты есть 16 бита, и так далее и так далее. 19 00:01:16,320 --> 00:01:22,780 У нас также есть символы, логические, а также плавает и парном разряде. 20 00:01:22,780 --> 00:01:27,150 Так как вы программировать на Java, это очень похоже. 21 00:01:27,150 --> 00:01:30,150 Так, например, у нас есть для петель и в то время петель, 22 00:01:30,150 --> 00:01:39,090 и если и остальное отчетность точно так же, как вы могли бы сделать в C, 23 00:01:39,090 --> 00:01:45,390 >> Ладно, так Особенность Java является то, что объектно-ориентированный. 24 00:01:45,390 --> 00:01:46,560 Теперь, что такое объекты? 25 00:01:46,560 --> 00:01:49,220 Так что, если вы посмотрите на вещи вокруг вас, вы будете 26 00:01:49,220 --> 00:01:54,540 заметить, что каждый объекта реального мира имеет две общие характеристики. 27 00:01:54,540 --> 00:01:59,100 И это в том, что они имеют состояние и у них есть какие-то поведения. 28 00:01:59,100 --> 00:02:02,510 >> Так, например, собак бы государства, которые 29 00:02:02,510 --> 00:02:07,360 : имя, цвет, порода, может быть, если собака голодна или нет. 30 00:02:07,360 --> 00:02:12,490 А некоторые модели поведения, что собаки будут иметь будет лаять или виляя хвостом, 31 00:02:12,490 --> 00:02:14,340 или извлечения мяч. 32 00:02:14,340 --> 00:02:18,120 Итак, мы можем также применить это к неодушевленным предметам. 33 00:02:18,120 --> 00:02:23,130 Так, например, автомобили, они имеют модель, год выпуска, максимальная скорость, 34 00:02:23,130 --> 00:02:25,500 и так далее, и так далее. 35 00:02:25,500 --> 00:02:27,450 И у них есть некоторое поведение. 36 00:02:27,450 --> 00:02:33,050 Например, ускорение или торможении, или собирается в обратном направлении. 37 00:02:33,050 --> 00:02:38,910 >> Так объекты Java попыток моделирования это при наличии поля и методы. 38 00:02:38,910 --> 00:02:45,050 Так поля государства, которые объект Java может иметь, 39 00:02:45,050 --> 00:02:51,440 в то время как метод будет представлять поведение, которое объект Java будет иметь. 40 00:02:51,440 --> 00:02:53,770 Поэтому, когда я говорю методы и поля, я действительно 41 00:02:53,770 --> 00:02:56,470 просто означать, переменные и функции. 42 00:02:56,470 --> 00:03:02,120 Они точно так же, за исключением того, что они применяются к конкретному объекту. 43 00:03:02,120 --> 00:03:04,880 >> Итак, переходим к классам. 44 00:03:04,880 --> 00:03:08,950 Классы Java похожи Чертежи для объекта. 45 00:03:08,950 --> 00:03:12,270 Они говорят вам, что методы он имеет то, что он имеет поля, 46 00:03:12,270 --> 00:03:17,750 и даже здесь, у нас есть что-то называемые модификаторы доступа, которые 47 00:03:17,750 --> 00:03:19,570 мы получим в то время. 48 00:03:19,570 --> 00:03:26,930 Таким образом, чтобы объявить класс Java, это очень похожи по синтаксису к C структуры. 49 00:03:26,930 --> 00:03:34,350 >> Здесь мы начинаем с автомобиля класса общественности, а то у нас открывающая фигурная скобка, а затем 50 00:03:34,350 --> 00:03:38,800 некоторое количество полей, которые Вы хотите, чтобы объект есть. 51 00:03:38,800 --> 00:03:44,650 А потом вот у нас есть некоторые методы, и мы также имеем конструктор объекта. 52 00:03:44,650 --> 00:03:48,690 Теперь то, что этот конструктор объекта делает это говорит объекту, 53 00:03:48,690 --> 00:03:53,370 ОК, я хочу, чтобы инициализировать это объект какого-то поля. 54 00:03:53,370 --> 00:03:58,310 >> Так вот, мы хотим, чтобы каждый автомобиль иметь модель и год. 55 00:03:58,310 --> 00:04:01,480 Поэтому у нас есть конструктор только специально 56 00:04:01,480 --> 00:04:06,560 для модели и года, и Это позволит создать модельное поле 57 00:04:06,560 --> 00:04:12,510 до определенного значения, и поле году. 58 00:04:12,510 --> 00:04:16,019 >> Теперь о доступе модификаторы я имел в виду. 59 00:04:16,019 --> 00:04:21,560 Здесь мы имеем общественности и частные модификаторы доступа. 60 00:04:21,560 --> 00:04:27,730 Таким образом, вы можете думать об этом как RWX в ваших каталогах. 61 00:04:27,730 --> 00:04:33,020 Таким образом, они позволяют определенных людей читать, и иметь доступ 62 00:04:33,020 --> 00:04:35,150 по этим полям и методам. 63 00:04:35,150 --> 00:04:39,470 >> Так что, если я скажу, что модель и год и скорость являются частными, 64 00:04:39,470 --> 00:04:46,360 это означает, что другие объекты не могут пытаться получить доступ к поля этого объекта 65 00:04:46,360 --> 00:04:47,760 Есть частные. 66 00:04:47,760 --> 00:04:52,280 Но когда я установил доступ Модификатор быть публичным, 67 00:04:52,280 --> 00:04:57,630 Теперь это означает, что другие объекты могут свободно обращаться и даже 68 00:04:57,630 --> 00:05:00,770 использовали методы, которые определены здесь. 69 00:05:00,770 --> 00:05:04,160 70 00:05:04,160 --> 00:05:09,210 >> Так что это основной Объект автомобилей, что у меня есть. 71 00:05:09,210 --> 00:05:15,350 У нас есть ускорить, переломит, и методы getSpeed. 72 00:05:15,350 --> 00:05:20,180 До этого момента, это все ясно Объекты Java и как их объявлять? 73 00:05:20,180 --> 00:05:22,710 Круто, все в порядке. 74 00:05:22,710 --> 00:05:29,120 Так что если вы хотите использовать Java объект в самой программе, 75 00:05:29,120 --> 00:05:35,720 то мы можем использовать это Новый конструктор автомобилей. 76 00:05:35,720 --> 00:05:41,250 Так вот, мы говорим, что мы хотим объявить Новый объект, который имеет тип автомобиля. 77 00:05:41,250 --> 00:05:44,120 И здесь это применение модель и год выпуска, 78 00:05:44,120 --> 00:05:51,110 которые мы определили в этот объект прямо здесь. 79 00:05:51,110 --> 00:05:55,150 >> Так что это еще один объекта, если вы заметили. 80 00:05:55,150 --> 00:05:59,820 Это класс для Сама главная программа. 81 00:05:59,820 --> 00:06:04,660 И у нас есть эта PSVM или общественного статической силы основных, функции, 82 00:06:04,660 --> 00:06:08,200 и его отправной точкой вашей программы, 83 00:06:08,200 --> 00:06:12,320 аналогично основной функция в вашей программе C. 84 00:06:12,320 --> 00:06:16,870 Здесь мы можем получить доступ и использовать функции объекта в 85 00:06:16,870 --> 00:06:21,480 используя точку, а затем Имя функции обозначения. 86 00:06:21,480 --> 00:06:26,130 И мы можем даже указать некоторые аргументы или параметры 87 00:06:26,130 --> 00:06:28,260 Для этой функции. 88 00:06:28,260 --> 00:06:32,410 >> Итак, переходим к наследованию. 89 00:06:32,410 --> 00:06:37,670 Так объектами реального мира, может одни и те же характеристики. 90 00:06:37,670 --> 00:06:42,490 Так, например, существует Различные типы велосипедов. 91 00:06:42,490 --> 00:06:47,280 Например, горный велосипед, Велосипеды городские или тандемные велосипеды. 92 00:06:47,280 --> 00:06:50,320 Поэтому они должны это общее свойство, что велосипед. 93 00:06:50,320 --> 00:06:55,740 >> И так велосипеды могут иметь два колеса и они могут иметь ручку, может быть, даже 94 00:06:55,740 --> 00:06:58,750 задний фонарь или что-то подобное. 95 00:06:58,750 --> 00:07:04,930 Так Java дает нам это власть представляют объекты 96 00:07:04,930 --> 00:07:10,170 которые имеют некий общий характеристики по наследству. 97 00:07:10,170 --> 00:07:18,370 Теперь, что наследование делает, это проходит на полях и методы объекта 98 00:07:18,370 --> 00:07:20,920 на дочернем объекте. 99 00:07:20,920 --> 00:07:24,080 >> Так, например, если есть автомобиль, и он имеет 100 00:07:24,080 --> 00:07:28,570 состояние имеющий четыре Колеса и один руль, 101 00:07:28,570 --> 00:07:31,120 то мы можем передать это на некоторые различные типы автомобилей. 102 00:07:31,120 --> 00:07:35,470 Например, у нас есть седан, спортивный автомобиль, и внедорожник. 103 00:07:35,470 --> 00:07:38,940 Теперь, эти три различных типы автомобилей все равно бы 104 00:07:38,940 --> 00:07:42,050 четыре колеса и один руль, но потом они 105 00:07:42,050 --> 00:07:43,900 может иметь определенные специальные характеристики, 106 00:07:43,900 --> 00:07:49,980 таких как имеющая пять мест и для седана, например. 107 00:07:49,980 --> 00:07:58,510 >> Таким образом, чтобы воспользоваться этой наследования функция, мы используем это расширяет ключевое слово. 108 00:07:58,510 --> 00:08:04,570 Так что помните, обратно к машине возразить, что я определил ранее. 109 00:08:04,570 --> 00:08:06,730 Теперь я определить объект седан. 110 00:08:06,730 --> 00:08:09,930 111 00:08:09,930 --> 00:08:17,850 Так что это объект Седан будет иметь же поля и функции или методы, 112 00:08:17,850 --> 00:08:19,660 что автомобиль будет иметь. 113 00:08:19,660 --> 00:08:24,830 Но тогда, здесь я указываю некоторые дополнительные функции, 114 00:08:24,830 --> 00:08:26,830 Например, множество Количество пассажиров 115 00:08:26,830 --> 00:08:29,150 и количество пассажиров получить. 116 00:08:29,150 --> 00:08:32,000 >> Здесь вы также можете заметить, что мы можем переопределить методы, 117 00:08:32,000 --> 00:08:34,840 и это означает, что мы просто замена поведение 118 00:08:34,840 --> 00:08:38,549 действовать в некоторых случаях по-разному. 119 00:08:38,549 --> 00:08:42,710 Так, например, я хочу, чтобы установить максимальную скорость для нашего автомобиля. 120 00:08:42,710 --> 00:08:49,840 А для этого, я проверяю ли это Скорость будет идти на максимальной скорости. 121 00:08:49,840 --> 00:08:54,180 А если это не так, то я называю супер класс "ускорить метод. 122 00:08:54,180 --> 00:09:00,350 Так что это super.accelerate () звонки супер класс "ускорить метод. 123 00:09:00,350 --> 00:09:05,390 124 00:09:05,390 --> 00:09:09,940 >> Наконец, мы собираемся говорить об интерфейсах. 125 00:09:09,940 --> 00:09:18,090 Так интерфейсы способ только разоблачить некоторые методы с внешним миром. 126 00:09:18,090 --> 00:09:19,980 Таким образом, они, как стол, Содержание и вы 127 00:09:19,980 --> 00:09:25,900 можете думать о них, как, как файлы C заголовок, просто 128 00:09:25,900 --> 00:09:33,680 как методы с пустыми органов, и они определить, какой объект или класс 129 00:09:33,680 --> 00:09:37,710 должен иметь, или то, что методы объект или класс должен иметь. 130 00:09:37,710 --> 00:09:41,360 >> Так, например, если имеют интерфейс велосипедов, 131 00:09:41,360 --> 00:09:46,530 и имеет три различные методы, а вот если я реализовать этот интерфейс, 132 00:09:46,530 --> 00:09:49,864 то это означает, что этот велосипед необходимо реализовать тех же трех 133 00:09:49,864 --> 00:09:51,530 методы, которые я, определенные в интерфейсе. 134 00:09:51,530 --> 00:09:57,076 135 00:09:57,076 --> 00:10:01,390 >> До этого момента, любые другие вопросы? 136 00:10:01,390 --> 00:10:03,240 Ладно, круто. 137 00:10:03,240 --> 00:10:07,770 Так что это было очень кратким и краткое руководство по Java. 138 00:10:07,770 --> 00:10:14,560 Там это способ больше функций и темы на Java, что вы можете пройти. 139 00:10:14,560 --> 00:10:17,690 Например, существует дженерики, есть типы данных, 140 00:10:17,690 --> 00:10:19,780 Есть даже перечисления и прочее. 141 00:10:19,780 --> 00:10:23,400 Так что если вы хотите узнать больше об этом, сделать следующие ссылки, 142 00:10:23,400 --> 00:10:25,840 и они будут учить вас о них больше. 143 00:10:25,840 --> 00:10:30,220 >> Итак, давайте перейдем к Фактическое мясо семинара, 144 00:10:30,220 --> 00:10:34,080 и что на самом деле Android программирования. 145 00:10:34,080 --> 00:10:37,660 Поэтому, прежде чем мы на самом деле добраться до программирования, 146 00:10:37,660 --> 00:10:40,800 Я хочу говорить о какой-жаргона. 147 00:10:40,800 --> 00:10:46,980 Так деятельность Способ Android, сказать 148 00:10:46,980 --> 00:10:52,870 это единственный экран в приложении. 149 00:10:52,870 --> 00:11:01,100 >> Так, например, если у вас есть Gmail приложения, мы имеем деятельность просматривать электронную почту. 150 00:11:01,100 --> 00:11:02,990 И потом, если вы нажмете уверен, электронная почта, что 151 00:11:02,990 --> 00:11:08,850 будет показан еще один деятельности, где это вид электронной почты деятельности. 152 00:11:08,850 --> 00:11:14,740 И тогда у нас также есть сочинять деятельность, или деятельность редактировать сообщения. 153 00:11:14,740 --> 00:11:18,380 И так деятельность как правило, только один экран 154 00:11:18,380 --> 00:11:21,800 в самом приложении. 155 00:11:21,800 --> 00:11:28,410 >> Теперь, взгляды компоненты, входящие в до экрана, либо самой деятельности. 156 00:11:28,410 --> 00:11:34,430 Так они привлекают уверен, вещь в вашем экране. 157 00:11:34,430 --> 00:11:37,840 Так, например, это может быть текстовое поле, это может быть этикетка, 158 00:11:37,840 --> 00:11:40,090 это может быть окно проверки. 159 00:11:40,090 --> 00:11:44,110 Так что много различных типов взглядов. 160 00:11:44,110 --> 00:11:47,780 Так что теперь у нас есть намерения, и это сообщение 161 00:11:47,780 --> 00:11:51,070 который передается на другой вид деятельности. 162 00:11:51,070 --> 00:11:58,997 И они содержат информацию о том, то, что вы хотите эта деятельность для выполнения. 163 00:11:58,997 --> 00:12:00,830 Наконец, у нас есть Файл манифеста, и что 164 00:12:00,830 --> 00:12:07,900 является XML-файл, который дает телефон Вся информация о вашем приложении. 165 00:12:07,900 --> 00:12:12,230 Так вот включает в себя версию, а мероприятия, которые вы будете иметь. 166 00:12:12,230 --> 00:12:17,480 >> Итак, давайте начнем. 167 00:12:17,480 --> 00:12:21,460 Итак, мы собираемся, чтобы быть с помощью Android Studio. 168 00:12:21,460 --> 00:12:26,960 Так что, если вы, ребята, это уже установлен, не стесняйтесь следовать вдоль. 169 00:12:26,960 --> 00:12:29,790 Мы постараемся начать с нуля. 170 00:12:29,790 --> 00:12:35,260 И поэтому я собираюсь попробовать и создать новый проект. 171 00:12:35,260 --> 00:12:40,370 И я собираюсь позвонить мой проект Android 101. 172 00:12:40,370 --> 00:12:45,770 И здесь мы ставим имя Проект в поле Имя приложения. 173 00:12:45,770 --> 00:12:48,500 >> Домен компании, вы не действительно нужно беспокоиться об этом. 174 00:12:48,500 --> 00:12:57,000 Это просто, как Android идентифицирует приложение. 175 00:12:57,000 --> 00:13:01,350 Так у вас есть доменное имя, вы можете ввести в имени домена внутри там вашем. 176 00:13:01,350 --> 00:13:05,370 Но если вы этого не сделаете, вы можете чувствовать себя бесплатно набрать в все, что вы хотите. 177 00:13:05,370 --> 00:13:08,226 Так вот, я просто наберите в frederickw.com. 178 00:13:08,226 --> 00:13:14,660 >> И вот, наконец, я выбираю, где Я хочу сохранить свой проект в. 179 00:13:14,660 --> 00:13:21,080 И я собираюсь просто выбрать свой рабочий стол. 180 00:13:21,080 --> 00:13:28,670 Таким образом, пользователи, Фредерик Widjaja и рабочий стол. 181 00:13:28,670 --> 00:13:31,340 ОК. 182 00:13:31,340 --> 00:13:34,090 Тогда нажмите кнопку Далее. 183 00:13:34,090 --> 00:13:39,630 Здесь я буду выбирать Минимальная API в поддержке. 184 00:13:39,630 --> 00:13:44,910 Таким образом, в этом случае, я будем выбирать API 15. 185 00:13:44,910 --> 00:13:51,530 И это нормально, если вы на самом деле просто выбрать 4,4, который является последним API. 186 00:13:51,530 --> 00:13:53,560 Или 5, на самом деле. 187 00:13:53,560 --> 00:13:57,714 Но тогда вы просто нужно беспокоиться о какие телефоны вы на самом деле, поддерживающие, 188 00:13:57,714 --> 00:13:59,130 и какие телефоны вы ориентируетесь. 189 00:13:59,130 --> 00:14:04,230 190 00:14:04,230 --> 00:14:06,260 Нажмите кнопку Далее. 191 00:14:06,260 --> 00:14:09,780 >> Итак, мы пришли к этому экраном, и мы просто 192 00:14:09,780 --> 00:14:15,110 собираетесь использовать создать деятельность через это. 193 00:14:15,110 --> 00:14:19,890 Так что я собираюсь нажать пробел деятельность, а затем Далее. 194 00:14:19,890 --> 00:14:23,110 Мы собираемся называть его главным деятельность, я думаю, что это хорошо. 195 00:14:23,110 --> 00:14:27,800 Просто буду называть его, пресс-Finish прямо здесь. 196 00:14:27,800 --> 00:14:36,250 Дождитесь загрузки, и мы идем. 197 00:14:36,250 --> 00:14:40,600 >> Так вот мы замечаем, три в разных папках. 198 00:14:40,600 --> 00:14:44,290 У нас есть явное папку который содержит наш манифест. 199 00:14:44,290 --> 00:14:48,360 Если вы открываете его, мы увидим наш пакет. 200 00:14:48,360 --> 00:14:54,000 Или определяет, как Android приложение 201 00:14:54,000 --> 00:14:58,990 а то у нас это тег приложения, которые 202 00:14:58,990 --> 00:15:05,420 содержит название нашего приложения а также в качестве значка для приложения. 203 00:15:05,420 --> 00:15:08,050 204 00:15:08,050 --> 00:15:11,950 >> Мы можем реально работать в этом Приложение прямой. 205 00:15:11,950 --> 00:15:14,600 Так почему бы нам не попробовать и сделать это? 206 00:15:14,600 --> 00:15:16,310 Я собираюсь использовать Genymotion. 207 00:15:16,310 --> 00:15:22,150 Если вы принесли свой собственный телефон, вы можете связать его и запустить его, если хотите. 208 00:15:22,150 --> 00:15:31,213 Но я просто хочу, чтобы использовать эмулятор, и я собираюсь начать в этом. 209 00:15:31,213 --> 00:15:31,713 Ох. 210 00:15:31,713 --> 00:15:41,030 211 00:15:41,030 --> 00:15:42,780 Ну, я думаю, что это собирается занять некоторое время, 212 00:15:42,780 --> 00:15:49,580 так что я думаю, что мы просто получить прямо в объяснении об этом подробнее. 213 00:15:49,580 --> 00:15:56,200 Так вот у нас есть каталог Java, или где ваши исходные файлы содержатся. 214 00:15:56,200 --> 00:16:02,500 Здесь мы имеем себя основную деятельность. 215 00:16:02,500 --> 00:16:07,120 Вы можете видеть, что это расширяет класс активности. 216 00:16:07,120 --> 00:16:12,750 Таким образом, наша основная деятельность экрана это будет в нашем приложении. 217 00:16:12,750 --> 00:16:21,790 А потом вот мы замечаем, что число функций сгенерированы автоматически для нас. 218 00:16:21,790 --> 00:16:26,037 У нас есть функция OnCreate, и что будет называться whenever-- 219 00:16:26,037 --> 00:16:27,870 СТУДЕНТ: Вы не возражаете, что делает текст больше? 220 00:16:27,870 --> 00:16:28,940 Фред Widjaja: Да, конечно. 221 00:16:28,940 --> 00:16:38,380 222 00:16:38,380 --> 00:16:41,640 Я постараюсь, чтобы увеличить размер шрифта. 223 00:16:41,640 --> 00:17:03,570 224 00:17:03,570 --> 00:17:06,490 Думаю, что должно быть хорошо. 225 00:17:06,490 --> 00:17:07,020 Это хорошо? 226 00:17:07,020 --> 00:17:09,480 >> СТУДЕНТ: Просто немного выше, как 20 или что-то. 227 00:17:09,480 --> 00:17:09,829 >> Фред Widjaja: 20? 228 00:17:09,829 --> 00:17:10,329 ОК. 229 00:17:10,329 --> 00:17:17,380 230 00:17:17,380 --> 00:17:20,990 Хорошо, все в порядке. 231 00:17:20,990 --> 00:17:24,740 Так вот у нас OnCreate Метод, который бы 232 00:17:24,740 --> 00:17:29,750 вызывается, когда наша деятельность создается в [? показать?]. 233 00:17:29,750 --> 00:17:32,100 У нас есть onCreateOptionsMenu, и мы 234 00:17:32,100 --> 00:17:38,370 видеть, что есть на самом деле Действие бар, а затем 235 00:17:38,370 --> 00:17:42,920 мы можем добавить некоторые пункты меню на нее. 236 00:17:42,920 --> 00:17:45,710 А потом вот у нас есть onOptionsItemSelected. 237 00:17:45,710 --> 00:17:52,210 Так что это, как слушателя событий, так всякий раз, когда выбор в нашем баре действий 238 00:17:52,210 --> 00:17:58,450 щелкнуть это функция будет вызвана, 239 00:17:58,450 --> 00:18:01,270 и он будет принят определенный предмет, что была нажата. 240 00:18:01,270 --> 00:18:05,670 241 00:18:05,670 --> 00:18:11,576 >> Хорошо, я собираюсь see-- что не работает хорошо. 242 00:18:11,576 --> 00:18:13,028 Давайте попробуем начать. 243 00:18:13,028 --> 00:18:16,416 244 00:18:16,416 --> 00:18:17,384 О, Боже. 245 00:18:17,384 --> 00:18:21,740 246 00:18:21,740 --> 00:18:23,560 ОК. 247 00:18:23,560 --> 00:18:24,320 Это вызывает озабоченность. 248 00:18:24,320 --> 00:18:39,390 249 00:18:39,390 --> 00:18:41,500 Итак, в любом случае. 250 00:18:41,500 --> 00:18:44,940 Здесь мы имеем макет для самой нашей деятельности. 251 00:18:44,940 --> 00:18:50,150 Это наша основная деятельность, а здесь мы замечаем, что есть на панели действий. 252 00:18:50,150 --> 00:18:54,460 А то у нас этот привет Мир этикетки, и мы можем на самом деле 253 00:18:54,460 --> 00:18:57,830 редактировать текст прямо здесь. 254 00:18:57,830 --> 00:19:03,260 Если вы идете и прокрутки до Hello World, 255 00:19:03,260 --> 00:19:06,360 мы можем изменить его на то, что мы хотим. 256 00:19:06,360 --> 00:19:10,070 Например, это может быть, Привет там. 257 00:19:10,070 --> 00:19:12,820 Добро пожаловать. 258 00:19:12,820 --> 00:19:14,345 И там мы идем, это меняется. 259 00:19:14,345 --> 00:19:20,380 260 00:19:20,380 --> 00:19:20,880 О, Боже. 261 00:19:20,880 --> 00:19:24,310 262 00:19:24,310 --> 00:19:26,010 Этот стиль не работает. 263 00:19:26,010 --> 00:19:28,320 Хорошо, что это беспокоит. 264 00:19:28,320 --> 00:19:32,000 Хорошо, в любом случае, мы можем двигаться дальше без этого. 265 00:19:32,000 --> 00:19:38,560 Так что сейчас, давайте попробуем сделать некоторые действительно основные вещи. 266 00:19:38,560 --> 00:19:42,450 И вот мы будем иметь этикетки, а затем мы 267 00:19:42,450 --> 00:19:47,005 будет иметь текст view-- извините, не текст зрения, 268 00:19:47,005 --> 00:19:49,310 мы собираемся иметь редактирования текста. 269 00:19:49,310 --> 00:19:53,900 И это компонент для ввода и прочее. 270 00:19:53,900 --> 00:19:56,590 271 00:19:56,590 --> 00:20:07,240 Итак, мы имеем простой текст, а затем мы просто добавим его в наш интерфейс. 272 00:20:07,240 --> 00:20:13,520 >> Здесь я хотел бы также добавить некоторый запас в верхней части так, что он выглядит лучше. 273 00:20:13,520 --> 00:20:19,190 Итак, мы собираемся, чтобы перейти к свойства, а затем в верхнем поле, 274 00:20:19,190 --> 00:20:23,120 мы собираемся добавить в 20 ДПС. 275 00:20:23,120 --> 00:20:28,170 Так что теперь, ДПС просто единица измерения в Android, 276 00:20:28,170 --> 00:20:31,240 и они стоят за плотности независимые пикселей. 277 00:20:31,240 --> 00:20:35,380 Так что, как вы знаете, Android, есть много различных типов экранов 278 00:20:35,380 --> 00:20:38,410 а затем они должны Различные плотности экрана. 279 00:20:38,410 --> 00:20:42,584 Так вот, это просто будет независимая плотность пикселей, 280 00:20:42,584 --> 00:20:44,750 так что это будет то же самое во всех экранах. 281 00:20:44,750 --> 00:20:49,046 282 00:20:49,046 --> 00:20:55,270 >> Переход продлить этот редактировать текст, и то я также собираюсь добавить кнопку. 283 00:20:55,270 --> 00:21:02,900 284 00:21:02,900 --> 00:21:04,370 И это скажет ОК. 285 00:21:04,370 --> 00:21:09,639 286 00:21:09,639 --> 00:21:10,597 20 ДПС. 287 00:21:10,597 --> 00:21:14,430 288 00:21:14,430 --> 00:21:16,630 ОК. 289 00:21:16,630 --> 00:21:20,060 Так что теперь у нас есть три различные компоненты. 290 00:21:20,060 --> 00:21:25,630 И так мы можем обратиться к их в нашем главном классе деятельности 291 00:21:25,630 --> 00:21:29,620 это с помощью этого метода называется findViewByID. 292 00:21:29,620 --> 00:21:36,790 Так что я собираюсь определить некоторые поля. 293 00:21:36,790 --> 00:21:48,290 Таким образом, мы имеем в TextView, так скажем helloText. 294 00:21:48,290 --> 00:21:55,400 295 00:21:55,400 --> 00:21:59,930 И потом, если вы используете Android Studio, Вы можете использовать контекстное очередные, 296 00:21:59,930 --> 00:22:01,120 войти. 297 00:22:01,120 --> 00:22:07,400 И нажмите Импорт класса автоматически импортировать соответствующие классы 298 00:22:07,400 --> 00:22:07,950 что нам нужно. 299 00:22:07,950 --> 00:22:10,590 300 00:22:10,590 --> 00:22:20,800 А потом вот я иду, чтобы добавить идентификатор это TextView и назовите его text_hello. 301 00:22:20,800 --> 00:22:28,320 302 00:22:28,320 --> 00:22:32,050 Теперь, когда мы определили ID для этого TextView, 303 00:22:32,050 --> 00:22:38,020 мы можем использовать это, чтобы обратиться к TextView, что мы только что определили. 304 00:22:38,020 --> 00:22:47,970 Так helloText равно TextView findViewByID, 305 00:22:47,970 --> 00:22:52,630 а затем мы указываем идентификатор, который мы хотим, что r.ID.text_hello. 306 00:22:52,630 --> 00:22:55,360 307 00:22:55,360 --> 00:22:59,560 >> Таким образом, это очень похоже на JavaScript и JQuery, где мы можем на самом деле просто 308 00:22:59,560 --> 00:23:05,430 относятся к определенным элементам в макете просто 309 00:23:05,430 --> 00:23:08,330 с помощью идентификатора, который мы указали. 310 00:23:08,330 --> 00:23:17,240 Таким образом, в целом, для доступа к определенный объект или определенного поля 311 00:23:17,240 --> 00:23:22,030 в нашем макете, вы будете иметь использовать этот метод findViewByID. 312 00:23:22,030 --> 00:23:26,290 И тогда мы будем делать то же самое вещи для других двух элементов. 313 00:23:26,290 --> 00:23:29,570 314 00:23:29,570 --> 00:23:36,683 Здесь я собираюсь добавить ID text_name. 315 00:23:36,683 --> 00:23:40,760 316 00:23:40,760 --> 00:23:42,770 Да. 317 00:23:42,770 --> 00:23:46,610 Так же, как для этого. 318 00:23:46,610 --> 00:23:49,345 319 00:23:49,345 --> 00:23:49,845 Button_ok. 320 00:23:49,845 --> 00:23:53,570 321 00:23:53,570 --> 00:23:58,120 >> Теперь то, что я хочу, чтобы это сделать, это Когда мы нажимаем на кнопку OK, 322 00:23:58,120 --> 00:24:02,110 и мы вводится какой-то имени в текстовое поле, 323 00:24:02,110 --> 00:24:10,880 то это будет обновлять это Этикетка сказать, привет, имя, добро пожаловать. 324 00:24:10,880 --> 00:24:16,520 Итак, вернемся в нашем главном класс деятельности, мы 325 00:24:16,520 --> 00:24:23,210 также собираюсь попробовать и обратитесь к те элементы, которые мы должны найти. 326 00:24:23,210 --> 00:24:30,860 >> Таким образом, мы имеем EditText nameText. 327 00:24:30,860 --> 00:24:33,615 328 00:24:33,615 --> 00:24:36,000 К сожалению. 329 00:24:36,000 --> 00:24:38,500 Введите и альтернативный, класс импорта. 330 00:24:38,500 --> 00:24:41,060 А потом еще и кнопку OK. 331 00:24:41,060 --> 00:24:45,660 332 00:24:45,660 --> 00:24:48,980 Кроме того, мы собираемся сделать то же самое здесь. 333 00:24:48,980 --> 00:24:54,900 nameText равно EditText findViewByID, r.ID.text_name. 334 00:24:54,900 --> 00:25:01,430 335 00:25:01,430 --> 00:25:03,380 А потом кнопку OK. 336 00:25:03,380 --> 00:25:10,180 337 00:25:10,180 --> 00:25:13,840 findViewByID, r.ID, а затем button_ok. 338 00:25:13,840 --> 00:25:16,400 339 00:25:16,400 --> 00:25:22,240 >> Итак, теперь у нас есть все три элементы, которые мы хотим обратиться к. 340 00:25:22,240 --> 00:25:27,630 Так что теперь я собираюсь приложить на кнопку слушателя нашей кнопки 341 00:25:27,630 --> 00:25:30,440 для прослушивания кликов пользователей. 342 00:25:30,440 --> 00:25:35,780 К этому мы используем только setOnClickListener событие. 343 00:25:35,780 --> 00:25:38,860 344 00:25:38,860 --> 00:25:44,010 Теперь, вот это говорю, что мы должны указать setOnClickListener, 345 00:25:44,010 --> 00:25:51,030 и вы можете сделать это, просто имея Новый onClickListener и нажмите Enter. 346 00:25:51,030 --> 00:25:56,935 >> И тогда у вас есть анонимный класс или анонимный объект. 347 00:25:56,935 --> 00:25:59,530 348 00:25:59,530 --> 00:26:02,790 И мы также имеем эту OnClick Метод, и это в основном 349 00:26:02,790 --> 00:26:05,580 то, что он будет называться всякий раз, когда нажата наш кнопки. 350 00:26:05,580 --> 00:26:15,860 >> Так вот, я хочу, чтобы получить имя, был введен в текстовое поле сначала так 351 00:26:15,860 --> 00:26:17,700 Имя Строка равно nameText.getText (). 352 00:26:17,700 --> 00:26:21,670 353 00:26:21,670 --> 00:26:26,400 Опять же, это, как Синтаксис Java для ссылки 354 00:26:26,400 --> 00:26:29,130 на функции в пределах объекта. 355 00:26:29,130 --> 00:26:36,290 Так nameText.getText, а затем мы собирается преобразовать его в строку. 356 00:26:36,290 --> 00:26:41,090 Теперь у нас есть имя, был введен пользователем. 357 00:26:41,090 --> 00:26:46,140 >> А потом мы собираемся создать новую строку, 358 00:26:46,140 --> 00:26:48,980 так что это будет называться привет. 359 00:26:48,980 --> 00:26:56,325 Я собираюсь сказать, привет, имя, добро пожаловать. 360 00:26:56,325 --> 00:27:00,810 361 00:27:00,810 --> 00:27:05,265 И, наконец, вы хотите обновить helloText. 362 00:27:05,265 --> 00:27:09,190 Таким образом, чтобы сделать это, мы просто вызываем helloText.setText (привет). 363 00:27:09,190 --> 00:27:16,940 364 00:27:16,940 --> 00:27:17,440 ОК. 365 00:27:17,440 --> 00:27:20,430 366 00:27:20,430 --> 00:27:22,770 К сожалению. 367 00:27:22,770 --> 00:27:30,645 >> Я собираюсь попробовать и повторно запустить Genymotion один последний раз и посмотреть, если он работает. 368 00:27:30,645 --> 00:27:35,160 369 00:27:35,160 --> 00:27:38,810 Если это не так, это совершенно нормально. 370 00:27:38,810 --> 00:27:39,730 ОК. 371 00:27:39,730 --> 00:27:41,970 Так что я думаю, что это не работает. 372 00:27:41,970 --> 00:27:48,960 373 00:27:48,960 --> 00:27:52,955 На самом деле, позвольте мне попытаться сделать это. 374 00:27:52,955 --> 00:27:56,188 375 00:27:56,188 --> 00:27:57,174 Может быть это. 376 00:27:57,174 --> 00:28:05,548 377 00:28:05,548 --> 00:28:06,048 Genymotion. 378 00:28:06,048 --> 00:28:25,761 379 00:28:25,761 --> 00:28:26,261 ОК. 380 00:28:26,261 --> 00:28:33,240 381 00:28:33,240 --> 00:28:33,980 Хорошо. 382 00:28:33,980 --> 00:28:35,170 Да, это работает. 383 00:28:35,170 --> 00:28:38,020 ОК. 384 00:28:38,020 --> 00:28:39,250 Это было страшно. 385 00:28:39,250 --> 00:28:40,890 ОК. 386 00:28:40,890 --> 00:28:43,270 Я не хотел этого делать. 387 00:28:43,270 --> 00:28:46,570 Итак, у нас есть этот Android эмулятор. 388 00:28:46,570 --> 00:28:49,070 Позвольте мне выключить. 389 00:28:49,070 --> 00:28:52,290 390 00:28:52,290 --> 00:28:55,720 Так у нас есть для Android эмулятора. 391 00:28:55,720 --> 00:28:59,750 Итак, мы собираемся, чтобы попытаться запустить это приложение, что мы сделали. 392 00:28:59,750 --> 00:29:04,100 Просто буду нажмите кнопку воспроизведения, и скажет, ожидая АБР. 393 00:29:04,100 --> 00:29:10,580 394 00:29:10,580 --> 00:29:12,780 О, Боже. 395 00:29:12,780 --> 00:29:13,280 Перезапуск. 396 00:29:13,280 --> 00:29:25,419 397 00:29:25,419 --> 00:29:30,150 Хорошо, я предполагаю, что это до сих пор не работает. 398 00:29:30,150 --> 00:29:31,280 Хорошо, по фигу, то. 399 00:29:31,280 --> 00:29:33,841 400 00:29:33,841 --> 00:29:38,150 это будет жаль. 401 00:29:38,150 --> 00:29:41,030 Но давайте говорить, что мы хотим создать новый вид деятельности, 402 00:29:41,030 --> 00:29:45,730 и мы будем иметь картина в этой деятельности. 403 00:29:45,730 --> 00:29:52,120 Чтобы сделать это, мы можем просто нажмите этот файл, а затем Создать. 404 00:29:52,120 --> 00:29:57,760 И то здесь мы можем выбрать Деятельность, а затем Blank активность. 405 00:29:57,760 --> 00:29:59,840 Здесь мы собираемся называть Может быть, он CatActivity. 406 00:29:59,840 --> 00:30:03,030 407 00:30:03,030 --> 00:30:06,537 >> ОК, так что теперь он генерирует два файла. 408 00:30:06,537 --> 00:30:08,245 Одна из них называется activity_cat, а другой 409 00:30:08,245 --> 00:30:10,630 называется catActivity, который является классом. 410 00:30:10,630 --> 00:30:13,250 411 00:30:13,250 --> 00:30:18,648 Итак, давайте говорить, что мы хотим, чтобы добавить изображение кошки прямо здесь. 412 00:30:18,648 --> 00:30:21,790 413 00:30:21,790 --> 00:30:25,220 Поэтому, когда вы сделаете это, мы собираемся использовать класс ImageView. 414 00:30:25,220 --> 00:30:28,076 415 00:30:28,076 --> 00:30:31,340 Мы собираемся, чтобы добавить его на здесь. 416 00:30:31,340 --> 00:30:35,350 А потом установить поле на 20 DP. 417 00:30:35,350 --> 00:30:37,920 418 00:30:37,920 --> 00:30:41,240 >> И теперь мы собираемся найти изображение кота на интернете. 419 00:30:41,240 --> 00:30:43,270 Итак, давайте посмотрим. 420 00:30:43,270 --> 00:30:43,770 Кат. 421 00:30:43,770 --> 00:30:48,280 422 00:30:48,280 --> 00:30:50,270 ОК. 423 00:30:50,270 --> 00:30:51,145 Я думаю, это нормально. 424 00:30:51,145 --> 00:30:59,070 425 00:30:59,070 --> 00:31:01,032 ОК. 426 00:31:01,032 --> 00:31:02,780 Так что теперь у нас есть изображение. 427 00:31:02,780 --> 00:31:07,720 Итак, мы собираемся добавить это в наш проект. 428 00:31:07,720 --> 00:31:16,140 Можно сделать это по праву щелчок и then-- мы 429 00:31:16,140 --> 00:31:25,965 может на самом деле просто открыть это, перейти загрузок, извините, рабочий стол. 430 00:31:25,965 --> 00:31:28,310 Переход, чтобы попытаться найти его. 431 00:31:28,310 --> 00:31:28,810 Кат. 432 00:31:28,810 --> 00:31:34,580 433 00:31:34,580 --> 00:31:35,790 Прямо здесь. 434 00:31:35,790 --> 00:31:42,820 Я собираюсь скопировать его в мою папку. 435 00:31:42,820 --> 00:31:46,800 Теперь, это будет задавать мне несколько вариантов. 436 00:31:46,800 --> 00:31:49,250 Теперь, я просто хочу, чтобы это находиться в папке растяжимой, 437 00:31:49,250 --> 00:31:54,390 и это будет для всех различных разрешениях экрана. 438 00:31:54,390 --> 00:31:57,100 Кроме того, мы можем на самом деле просто выберите 439 00:31:57,100 --> 00:32:01,270 который Разрешение экрана хочу на эту фотографию, чтобы быть в. 440 00:32:01,270 --> 00:32:06,150 Так собираетесь выбрать холст папку, нажмите кнопку ОК. 441 00:32:06,150 --> 00:32:08,660 442 00:32:08,660 --> 00:32:09,910 Просто буду называть его cat.jpg. 443 00:32:09,910 --> 00:32:12,560 444 00:32:12,560 --> 00:32:15,970 >> Итак, теперь он добавляется в нашей точки зрения изображения. 445 00:32:15,970 --> 00:32:18,800 446 00:32:18,800 --> 00:32:22,020 мы собираемся иметь, чтобы использовать этот источник прямо здесь, 447 00:32:22,020 --> 00:32:27,420 и тогда мы сможем использовать эту Бип-бип точку кнопку и выберите изображение кошки. 448 00:32:27,420 --> 00:32:30,010 449 00:32:30,010 --> 00:32:32,620 ОК. 450 00:32:32,620 --> 00:32:39,480 Так что теперь я хочу сделать так, что это просто правильный размер. 451 00:32:39,480 --> 00:32:50,050 Так что я собираюсь выбрать этот отрегулировать смотреть вариант ограничивает прямо здесь, 452 00:32:50,050 --> 00:32:54,960 и автоматически устанавливает его до нужного размера. 453 00:32:54,960 --> 00:32:55,460 ОК. 454 00:32:55,460 --> 00:33:02,410 455 00:33:02,410 --> 00:33:09,380 Теперь, на самом деле начать в этом деятельность из нашего предыдущего деятельности, 456 00:33:09,380 --> 00:33:15,470 Вы будете иметь, чтобы использовать то, что называется намерение. 457 00:33:15,470 --> 00:33:19,115 Так что давайте говорить, что я собираюсь добавить еще один Кнопка, которая запускает активность. 458 00:33:19,115 --> 00:33:26,640 459 00:33:26,640 --> 00:33:29,150 Я собираюсь добавить его здесь, прямо здесь. 460 00:33:29,150 --> 00:33:36,160 И тогда это будет есть текст, включите его. 461 00:33:36,160 --> 00:33:38,711 462 00:33:38,711 --> 00:33:39,210 К сожалению. 463 00:33:39,210 --> 00:33:42,470 464 00:33:42,470 --> 00:33:43,320 ОК. 465 00:33:43,320 --> 00:33:47,560 >> Теперь, как мы на самом деле открыть новый вид деятельности в рамках этой деятельности? 466 00:33:47,560 --> 00:33:52,280 467 00:33:52,280 --> 00:33:54,650 Так же дело, как и раньше. 468 00:33:54,650 --> 00:34:01,120 Нам нужно добавить идентификатор этого Кнопка, и называют его button_activate. 469 00:34:01,120 --> 00:34:09,489 470 00:34:09,489 --> 00:34:16,880 И тогда в нашей основной деятельности, собирается чтобы эта новая кнопка activateButton. 471 00:34:16,880 --> 00:34:21,630 472 00:34:21,630 --> 00:34:26,150 А потом еще и использовать Метод findViewByID. 473 00:34:26,150 --> 00:34:29,449 474 00:34:29,449 --> 00:34:33,960 activateButton равна кнопку findViewByID r.ID.button_activate. 475 00:34:33,960 --> 00:34:43,960 476 00:34:43,960 --> 00:34:45,830 >> ОК. 477 00:34:45,830 --> 00:34:48,500 И тогда мы также собираемся добавить в onClickListener. 478 00:34:48,500 --> 00:34:56,360 479 00:34:56,360 --> 00:34:57,294 Новый onClickListener. 480 00:34:57,294 --> 00:35:01,870 481 00:35:01,870 --> 00:35:07,145 А потом мы собираемся использовать Это то, что называется намерением. 482 00:35:07,145 --> 00:35:10,070 483 00:35:10,070 --> 00:35:11,905 Намерение равно новый Intent (это). 484 00:35:11,905 --> 00:35:17,260 485 00:35:17,260 --> 00:35:20,699 А потом название деятельность, что мы хотим показать. 486 00:35:20,699 --> 00:35:22,990 Так вот в этом, мы собираемся иметь catActivity.class. 487 00:35:22,990 --> 00:35:30,412 488 00:35:30,412 --> 00:35:31,147 Извините. 489 00:35:31,147 --> 00:35:33,230 Мы собираемся иметь, чтобы укажите @ MainActivity.this. 490 00:35:33,230 --> 00:35:36,100 491 00:35:36,100 --> 00:35:41,910 Так что теперь .this собственности имеет в виду к текущему экземпляру объекта 492 00:35:41,910 --> 00:35:43,271 Сам. 493 00:35:43,271 --> 00:35:43,770 ОК. 494 00:35:43,770 --> 00:35:48,020 До этого момента, все вопросы? 495 00:35:48,020 --> 00:35:48,890 Все хорошо? 496 00:35:48,890 --> 00:35:49,390 Хорошо. 497 00:35:49,390 --> 00:35:52,890 498 00:35:52,890 --> 00:35:57,430 >> И потом, если вы хотите, чтобы начать деятельность, это довольно просто. 499 00:35:57,430 --> 00:35:59,904 Мы просто позвонить Метод startActivity. 500 00:35:59,904 --> 00:36:04,260 501 00:36:04,260 --> 00:36:07,355 И тогда мы проходим в намерениях Объект, который мы только что определили. 502 00:36:07,355 --> 00:36:10,640 503 00:36:10,640 --> 00:36:16,140 К сожалению, мы не могу показать это. 504 00:36:16,140 --> 00:36:23,000 Я надеялся, что мы можем реально работать это и показать его по в семинаре, 505 00:36:23,000 --> 00:36:26,661 но, к сожалению, нет. 506 00:36:26,661 --> 00:36:28,980 О, Боже. 507 00:36:28,980 --> 00:36:29,480 Понимаю. 508 00:36:29,480 --> 00:36:32,134 О, мы собираемся, чтобы попытаться убить ATB.exe. 509 00:36:32,134 --> 00:36:43,510 510 00:36:43,510 --> 00:36:45,214 ОК. 511 00:36:45,214 --> 00:36:45,714 Перезапуск. 512 00:36:45,714 --> 00:36:53,490 513 00:36:53,490 --> 00:36:56,262 Разве это работает? 514 00:36:56,262 --> 00:36:57,710 О, хорошо. 515 00:36:57,710 --> 00:37:00,660 Так что теперь это на самом деле компиляции. 516 00:37:00,660 --> 00:37:02,410 Ох. 517 00:37:02,410 --> 00:37:04,420 К сожалению, есть устройства не работает. 518 00:37:04,420 --> 00:37:06,040 Давайте попробуем перезагрузить эмулятор. 519 00:37:06,040 --> 00:37:56,335 520 00:37:56,335 --> 00:37:57,880 Ах, там мы идем. 521 00:37:57,880 --> 00:37:59,050 Это оказалось. 522 00:37:59,050 --> 00:38:00,070 ОК. 523 00:38:00,070 --> 00:38:06,010 Так что я собираюсь начать мой приложение на моем эмуляторе Android. 524 00:38:06,010 --> 00:38:08,330 И у нас есть вещи, что мы определили только сейчас. 525 00:38:08,330 --> 00:38:13,620 Итак, мы имеем этикетку, вид Текст, текстовое поле, а затем кнопку. 526 00:38:13,620 --> 00:38:18,449 Так что я собираюсь вход мое имя прямо здесь, 527 00:38:18,449 --> 00:38:19,990 и там мы идем, он изменил текст. 528 00:38:19,990 --> 00:38:25,980 Так что, если мы введем в Фу, с это собирается менять в Foo. 529 00:38:25,980 --> 00:38:29,040 >> И если я нажимаю Активировть, что 530 00:38:29,040 --> 00:38:34,560 мы связаны на самом деле запустить новый вид деятельности, мы надеемся, что это будет работать, 531 00:38:34,560 --> 00:38:35,190 там мы идем. 532 00:38:35,190 --> 00:38:36,760 Он запускает новую деятельность. 533 00:38:36,760 --> 00:38:40,001 534 00:38:40,001 --> 00:38:47,010 Чтобы вернуться назад, мы можем нажать Кнопка Назад прямо здесь. 535 00:38:47,010 --> 00:38:47,510 Или нет. 536 00:38:47,510 --> 00:38:49,610 О, там мы идем. 537 00:38:49,610 --> 00:38:51,450 К сожалению. 538 00:38:51,450 --> 00:38:52,611 Это было плохо. 539 00:38:52,611 --> 00:38:53,890 ОК. 540 00:38:53,890 --> 00:38:58,550 >> Так что теперь мы внедрили некоторые основные вещи в Android, 541 00:38:58,550 --> 00:39:04,800 мы можем попробовать и сделать некоторые более сложные вещи. 542 00:39:04,800 --> 00:39:10,070 Итак, сначала давайте попробуем передавать сообщения от одного вида деятельности к другому. 543 00:39:10,070 --> 00:39:13,760 Так что давайте говорить, что мы хотим пройти по Название от основной деятельности 544 00:39:13,760 --> 00:39:16,710 Коту деятельности. 545 00:39:16,710 --> 00:39:19,740 И имя будет извлекается из этой nameText. 546 00:39:19,740 --> 00:39:23,510 547 00:39:23,510 --> 00:39:30,160 >> Итак, во-первых, мы собираемся получить имя прямо здесь. 548 00:39:30,160 --> 00:39:32,230 Имя Строка равно nameText.getText (). ToString (). 549 00:39:32,230 --> 00:39:39,588 550 00:39:39,588 --> 00:39:41,420 ОК. 551 00:39:41,420 --> 00:39:52,260 И тогда мы сможем использовать эту вещь называется intent.putExtra (имя), 552 00:39:52,260 --> 00:39:57,650 а затем он на самом деле хочет ключ для этого дополнительного поля. 553 00:39:57,650 --> 00:40:05,520 >> Так что я собираюсь, чтобы определить новый ключ, мы будем называть его EXTRA_NAME. 554 00:40:05,520 --> 00:40:11,570 555 00:40:11,570 --> 00:40:17,160 Так что я собираюсь использовать это ключ, CatActivity.EXTRA_NAME, 556 00:40:17,160 --> 00:40:21,010 а затем передать в самом названии. 557 00:40:21,010 --> 00:40:26,370 >> ОК, так что теперь мы можем на самом деле получить это в новой CatActivity. 558 00:40:26,370 --> 00:40:38,650 Чтобы сделать это, мы должны использовать Цель равно метод getIntent. 559 00:40:38,650 --> 00:40:41,360 Так что теперь это будет получить умысла 560 00:40:41,360 --> 00:40:45,070 был использован для вызова этой новой деятельности. 561 00:40:45,070 --> 00:40:50,340 Так что если вы хотите получить строку что мы на самом деле положил внутри намерениях, 562 00:40:50,340 --> 00:41:00,255 Вы можете использовать intent.getStringExtra а затем передать в том же ключе, 563 00:41:00,255 --> 00:41:04,080 564 00:41:04,080 --> 00:41:10,570 >> Хорошо, теперь давайте говорить, что мы вас Чтобы изменить это поле. 565 00:41:10,570 --> 00:41:14,422 566 00:41:14,422 --> 00:41:15,630 Изменить это поле прямо здесь. 567 00:41:15,630 --> 00:41:18,400 568 00:41:18,400 --> 00:41:20,900 И давайте сделаем шрифт Размер этой области больше. 569 00:41:20,900 --> 00:41:26,480 Итак, давайте скажем, я хочу, чтобы это было 20 DP. 570 00:41:26,480 --> 00:41:28,340 ОК. 571 00:41:28,340 --> 00:41:32,070 И я собираюсь добавить ID для этого TextView, 572 00:41:32,070 --> 00:41:35,690 и я буду называть его text_cat. 573 00:41:35,690 --> 00:41:41,170 574 00:41:41,170 --> 00:41:41,670 Извините. 575 00:41:41,670 --> 00:41:45,630 576 00:41:45,630 --> 00:41:51,310 >> И еще в CatActivity, То же самое дело, как раньше. 577 00:41:51,310 --> 00:41:55,090 Мы собираемся определить некоторые поля. 578 00:41:55,090 --> 00:41:58,890 Вот это будет TextView catText. 579 00:41:58,890 --> 00:42:03,500 580 00:42:03,500 --> 00:42:11,750 А потом catText равно TextView findViewByID, r.ID.text_cat. 581 00:42:11,750 --> 00:42:17,230 582 00:42:17,230 --> 00:42:18,780 ОК. 583 00:42:18,780 --> 00:42:24,100 А потом обратно сюда, я собирается установить текстовый право 584 00:42:24,100 --> 00:42:28,120 после того как мы получить для это из намерения. 585 00:42:28,120 --> 00:42:30,207 586 00:42:30,207 --> 00:42:30,790 SetText (имя). 587 00:42:30,790 --> 00:42:36,020 588 00:42:36,020 --> 00:42:38,056 >> Итак, давайте попробуем это. 589 00:42:38,056 --> 00:42:39,070 Нажмите на кнопку воспроизведения. 590 00:42:39,070 --> 00:42:41,830 591 00:42:41,830 --> 00:42:43,445 Я собираюсь использовать то же устройство. 592 00:42:43,445 --> 00:42:47,770 593 00:42:47,770 --> 00:42:50,380 Вернуться в здесь. 594 00:42:50,380 --> 00:42:57,030 Так что давайте говорить, что я не input-- если мы не указываем любое имя, 595 00:42:57,030 --> 00:42:59,330 давайте посмотрим, что происходит. 596 00:42:59,330 --> 00:43:02,150 Так что теперь нет ничего, что появляется. 597 00:43:02,150 --> 00:43:10,390 Таким образом мы идем назад и вход наше имя, это просто будет сказать Фред. 598 00:43:10,390 --> 00:43:14,670 Так что мы можем на самом деле передачи сообщений от одного вида деятельности к другому. 599 00:43:14,670 --> 00:43:15,170 ОК. 600 00:43:15,170 --> 00:43:18,040 601 00:43:18,040 --> 00:43:22,590 >> Так что куча других взглядов что вы можете использовать в Android. 602 00:43:22,590 --> 00:43:29,740 Так что теперь у нас есть прогресс баров, у нас есть представления списка, у нас есть кнопки-переключатели, 603 00:43:29,740 --> 00:43:33,950 и если вы действительно хотели, чтобы узнать больше о том, 604 00:43:33,950 --> 00:43:36,790 Вы можете фактически посетить эти веб-страниц. 605 00:43:36,790 --> 00:43:41,160 Они содержат много различных ресурсов. 606 00:43:41,160 --> 00:43:45,230 Так, например, в API направлять прямо здесь на самом деле 607 00:43:45,230 --> 00:43:50,885 дает вам некоторые примеры кода для некоторые особенности в Android библиотеке. 608 00:43:50,885 --> 00:43:53,692 609 00:43:53,692 --> 00:43:57,560 >> И еще несколько учебников я нашел полезным при обучении Android. 610 00:43:57,560 --> 00:44:06,890 Это само по себе официальный учебник, а также это другой учебник прямо здесь. 611 00:44:06,890 --> 00:44:10,200 И, наконец, вы можете на самом деле использовать различные библиотеки 612 00:44:10,200 --> 00:44:12,710 для вашего Android приложения. 613 00:44:12,710 --> 00:44:16,370 Теперь, эти на самом деле продлить функциональность вашего приложения 614 00:44:16,370 --> 00:44:19,665 без действительно написать много кода. 615 00:44:19,665 --> 00:44:21,540 Недостатком является, Конечно, что вы на самом деле 616 00:44:21,540 --> 00:44:23,890 должны научиться библиотекам себя. 617 00:44:23,890 --> 00:44:29,170 >> Так, например, если вы хотите сделать Использование технологии облачных Dropbox, 618 00:44:29,170 --> 00:44:33,400 то вы можете использовать API Dropbox. 619 00:44:33,400 --> 00:44:36,530 Подобные с API Facebook. 620 00:44:36,530 --> 00:44:40,490 А потом там на самом деле мало различные другие различные библиотеки 621 00:44:40,490 --> 00:44:41,700 что вы можете использовать. 622 00:44:41,700 --> 00:44:45,560 Если вы пытаетесь получить, как, JSON из определенного веб-сайта, 623 00:44:45,560 --> 00:44:49,560 то я думаю, Google JSON Библиотека будет довольно полезно. 624 00:44:49,560 --> 00:44:56,200 Так что теперь, что превращает JSON форматированный текст в объект Java, 625 00:44:56,200 --> 00:44:58,600 и наоборот. 626 00:44:58,600 --> 00:45:01,110 >> А тут еще по переоборудованию и Пикассо. 627 00:45:01,110 --> 00:45:07,240 И это, если вы хотите, чтобы use-- это потому что если вы используете API покоя. 628 00:45:07,240 --> 00:45:13,300 И Пикассо, если вы используете изображения для вашего Android приложения. 629 00:45:13,300 --> 00:45:14,350 Хорошо. 630 00:45:14,350 --> 00:45:18,030 Большое спасибо, и получайте удовольствие кодирование. 631 00:45:18,030 --> 00:45:19,723