close

Вход

Забыли?

вход по аккаунту

?

Отчет Steym 4курс тв

код для вставкиСкачать
ПАВЛОДАРСКИЙ КОЛЛЕДЖ УПРАВЛЕНИЯ
ОТЧЕТ
ПО ПРОИЗВОДСТВЕННО-
ТЕХНОЛОГИЧЕСКОЙ ПРАКТИКЕ
Руководитель:
Гребенщикова Т.В.
Студент
гр. П - 42
Разгайлов Е.Ю.
___________2013 г.
2013 г.
ДАТАОГЛАВЛЕНИЕВВЕДЕНИЕ02.09.13Вводный инструктаж03.09.13Изучение техники безопасности 04.09.13Изучение техники безопасности05.09.13Изучение техники безопасности06.09.13Знакомство с рабочим местом07.09.13Знакомство с рабочим местом09.09.13Изучение материалов по программированию под OC10.09.13 "Android" на Языке JAVA11.09.13Изучение структуры OC "Android"12.09.13Изучение структуры OC "Android"13.09.13Изучение структуры OC "Android"14.09.13Установка программных средств "JDK" и "Eclipse"16.09.13Подключение модуля ADT к программе "Eclipse"17.09.13Установка и настройка "SDK"18.09.13Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"19.09.13Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"20.09.13Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"21.09.13Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"23.09.13Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"24.09.13Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"25.09.13Разработка визуального интерфейса для приложения26.09.13Разработка визуального интерфейса для приложения27.09.13Разработка визуального интерфейса для приложения28.09.13Визуализация компонентов интерфейса30.09.13Урок "Работаем с элементами экрана из кода"01.10.13Урок "Работаем с элементами экрана из кода"02.10.13Урок "Работаем с элементами экрана из кода"03.10.13Урок "Работаем с элементами экрана из кода"04.10.13Урок "Работаем с элементами экрана из кода"05.10.13Урок "Работаем с элементами экрана из кода"07.10.13Урок "Работаем с элементами экрана из кода"08.10.13Урок "Работаем с элементами экрана из кода"09.10.13Урок "Работаем с элементами экрана из кода"10.10.13Урок "Виды Layouts. Ключевые отличия и свойства"11.10.13Урок "Виды Layouts. Ключевые отличия и свойства"12.10.13Урок "Виды Layouts. Ключевые отличия и свойства"14.10.13Урок "Виды Layouts. Ключевые отличия и свойства"15.10.13Урок "Виды Layouts. Ключевые отличия и свойства"16.10.13Урок "Виды Layouts. Ключевые отличия и свойства"17.10.13Урок "Виды Layouts. Ключевые отличия и свойства"18.10.13Урок "Виды Layouts. Ключевые отличия и свойства"19.10.13Разработка визуального интерфейса для приложения21.10.13Разработка визуального интерфейса для приложения22.10.13Разработка визуального интерфейса для приложения23.10.13Помощь в документации24.10.13Помощь в документации25.10.13Помощь в документации26.10.13Разработка визуального интерфейса для приложения28.10.13Разработка визуального интерфейса для приложения29.10.13Разработка визуального интерфейса для приложения30.10.13Разработка визуального интерфейса для приложения31.10.13Разработка визуального интерфейса для приложения01.11.13Разработка визуального интерфейса для приложения02.11.13Разработка экрана загрузки04.11.13Разработка экрана загрузки05.11.13Разработка экрана загрузки06.11.13Разработка экрана загрузки07.11.13Разработка экрана загрузки08.11.13Разработка визуального интерфейса для приложения09.11.13Разработка визуального интерфейса для приложения11.11.13Разработка визуального интерфейса для приложения12.11.13Разработка визуального интерфейса для приложения13.11.13Разработка визуального интерфейса для приложения14.11.13Сортировка документов15.11.13Общение с коллективом16.11.13Наблюдение за установкой сервера17.11.13Разработка визуального интерфейса для приложения18.11.13Разработка визуального интерфейса для приложения19.11.13Разработка визуального интерфейса для приложения20.11.13Разработка визуального интерфейса для приложения21.11.13Разработка визуального интерфейса для приложения22.11.1323.11.13ЗАКЛЮЧЕНИЕ ВВЕДЕНИЕ
В соответствии с учебным планом в период с 1 сентября по 23 ноября проходит технологическая практика. За 12 недель следует применить на практики полученные знания за 3 курс и изучить азы Java.На протяжении всей практики планируются консультации по прохождению практики и оформления отчетной документации. Руководитель практики от колледжа Гребенщикова Тамара Валентиновна.
Технологическая практика проходит в компании "NTR Group", Руководитель практики от предприятия является Разгайлова Екатерина Юрьевна.
Отчетная документация оформляется в соответствии с программой практики и по стандартам Павлодарского колледжа управления.
02.09.13 Вводный инструктаж
По прибытию на предприятие был представлен И.О директора фирмы в сопровождении менеджера, посетил все отделы фирмы и ознакомился с основной деятельностью фирмы. После этого был представлен своему куратору для прохождения практики.
03.09.13 Техника безопасности
В отделе техники безопасности получил документацию в электроном виде по технике безопасности для тщательного изучения.
05.09.13 Техника безопасности
После окончанию изучения техники безопасности прошел тестирование техники безопасности фирмы у менеджера.
06.09.13 Знакомство с рабочим местом
Куратор от фирмы "NTR Group" ввел в курс дела, над какими проектами в данный промежуток времени ведутся работы, что уже сделано и что еще предстоит сделать. 07.09.13 Знакомство с рабочим местом
Был выдан ключ входа на сервер, для удаленного подключения к рабочей группе объяснил обязанности каждого из группы в нынешних проектах, так же дал электронную книгу для изучения и объяснил мои обязанасти как практикуемого. 09.09.13 Изучение материалов по программированию под OC "Android" на Языке JAVA
Начал изучение программирование под Android по средствам прочтения книги "Google android программирование для мобильных устройств" автор А.Л Голощапов.
В данной книге рассмотрена разработка программ для мобильных устройств под управлением операционной системы Google Android. Приведены базовые сведения о платформе Android. Описано программное обеспечение, необходимое для разработки Android-пpилoжeний.
10.09.13 Изучение материалов по программированию под OC "Android" на Языке JAVA
Рассмотрены основные компоненты приложений, использование базовых виджетов и виджетов-списков, создание и вызов уведомлений из приложения, работа с файлами, способы хранения и обработки данных, создание служб в Android и др. Показано применение графических ресурсов и создание анимации в приложениях с использованием возможностей Android SDK.
11.09.13 Изучение структуры OC "android"
Система Android - это программный стек для мобильных устройств, который включает в себя операционную систему, программное обеспечение промежуточного слоя (middleware), а также основные пользовательские приложения (e-mail-клиент, календарь, карты, браузер, контакты и др.).
Архитектуру Android принято делить на четыре уровня: - уровень ядра;
- уровень библиотек и среды выполнения;
- уровень каркаса приложений;
- уровень приложений.
На Рисунке 1 показаны основные компоненты операционной системы Android и их взаимодействие между собой.
Рисунок 1 - Компоненты операционной системы android
14.09.13 Установка программных средств "JDK" и "Eclipse"
Для разработки программ на языке Java нам потребуется специальное программное обеспечение. Самые новые версии системного программного обеспечения, необходимого для поддержки, можно загрузить с сайта компании Sun Microsystems. Для запуска и исполнения программ необходима Java Runtime Environment (среда выполнения Java, JRE). Для разработки программ также требуется комплект разработки программного обеспечения- JDK (Java Development Kit).
Java Development Kit - это комплект разработчика приложений на языке Java, включающий в себя компилятор Java (javac), стандартные библиотеки классов Java, примеры, документацию, различные утилиты и уже включающий в себя Java Runtime Environment (JRE).
Java Development Kit доступен для свободной загрузки на сайте Sun Microsystems по адресу http://java.sun.com/javase/downloads/index.jsp. После загрузки JDK сделайте инсталляцию с параметрами по умолчанию, предлагаемыми мастером установки. Установка Eclipse он доступен для загрузки по адресу http://www.eclipse.org/downloads/. После того как вы загрузили Eclipse, разверните архив и запустите файл eclipse.exe. По умолчанию Eclipse устанавливается в ваш пользовательский каталог (в MS Windows), но вы можете установить его в каталог Program Files или любой другой. Несмотря на то что для разработки можно использовать и другие IDE, есть несколько причин, почему Eclipse рекомендуется для разработки Android- приложений:
- Eclipse - наиболее полно документированная, свободная и доступная интегрированная среда разработки для Java. Eclipse также очень прост в изучении - освоение его займет минимальное время. Это делает Eclipse очень привлекательным IDE для разработки приложений под Android;- компания Google выпустила плагин к продукту Android для Eclipse -Android Development Tools, который позволяет создавать Android-npoeкты, компилировать и использовать эмулятор мобильного Android-ycTpoficTBaдля их запуска и отладки приложений. Плагин Android Development Tools для Eclipse автоматически создает необходимую структуру Android- проекта и устанавливает требуемые параметры настройки компилятора.
16.09.13 Подключение модуля ADT к программе "Eclipse"
Плагин Android Development Tools (ADT) - это расширение для интегрированной среды разработки Eclipse, ускоряющее и упрощающее создание и отладку приложений. Для установки Android Development Tools сначала запустите Eclipse, затем выберите пункт меню Help | InstaIl New Software. В появившемся диалоговом окне нажмите кнопку Add. После установки соединения пометьте устанавливаемые компоненты ADT, как показано на Рисунке 2.
Рисунок 2 - Устанавливаемые компоненты ADT
ADT-плагин к программе интегрирует в Eclipse следующие компоненты:
- мастер создания проекта Android - New Project Wizard, который упрощает создание новых проектов Android и формирует шаблон проекта;
О редактор Layout Editor - для разработки графического интерфейса приложения;
- редакторы ресурсов для создания, редактирования и проверки правильности ХМL-ресурсов разработчика.
ADT-плагин также предоставляет доступ к остальным инструментам Android внутри Eclipse. Например, ADT позволяет запускать эмулятор мобильного устройства, получить доступ ко многим возможностям DDMS (Dalvik Debug Monitor Service)- инструмента SDK для управления портами, настройки контрольных точек (breakpoints), просмотра информации о потоках и процессах непосредственно из среды Eclipse.
17.09.13 Установка и настройка "SDK"
Чтобы разрабатывать приложения для Android, необходим Android SDK. SDK включает эмулятор, так что нет необходимости в мобильном устройстве с ОС Android, чтобы разрабатывать приложения для Android. Android SDK доступен для свободного скачивания на официальном сайте Android по адресу http://developer.android.com/sdk/index.html. После загрузки распакуйте файл в выбранную вами директорию.Чтобы разрабатывать приложения, необходимо установить не менее одной версии платформы Android, используя Android SDK and AVD Manager. Это требует подключения к Интернету, т. к. все необходимые для загрузки и обновления компоненты SDK находятся в репозитории на сервере Google. Чтобы открыть Android SDK and AVD Manager, запустите файл SDK Setup.exe в корневом каталоге SDK. После установки соединения с репозиторием в окне менеджера будет отображен список доступных пакетов, как показано на Рисунке 3.
Рисунок 3 - Репозиторий в окне менеджера
После выполнения всех инструкций по установке перезапустите среду Eclipse. Теперь необходимо связать Eclipse с каталогом Android SDK.
Выберите в главном меню Eclipse пункт Window | Preferences, чтобы открыть диалоговое окно Preferences. Выберите в левой панели пункт Android. В поле SDK Location в основной панели необходимо указать каталог, в котором расположен Android SDK. Для этого нажмите кнопку Browse и установите путь к каталогу Android SDK, как показано на Рисунке 4. Рисунок 4 - Связывание среды Eclipse с Android SDK
Нажмите кнопку AppIy, затем ОК. IDE Eclipse теперь "видит" библиотеки и инструменты Android SDK, и можно начинать разрабатывать приложения для Android. ADT-плагин для Eclipse автоматизирует и упрощает процесс построения приложений для Android, интегрируя инструменты разработки непосредственно в среду разработки Eclipse, что делает создание, запуск и отладку ваших приложений быстрее и проще.
18.09.13 Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"
При разработке каждому Activity сопоставляется одноименный java-класс (наследник класса android.app.Activity). При запуске приложения, когда система должна показать Activity и в дальнейшем работать с ним, она будет вызывать методы этого класса. И от того, что мы в этих методах накодим, зависит поведение Activity. При создании проекта мы указывали, что надо создать Activity с именем MainActivity как показано на Рисунке 5.
Рисунок 5 - Создание MainActivity
Посмотрим этот класс: откроем двойным кликом файл src/ru.startandroid.develop.LayoutFiles/MainActivity.java Рисунок 6.
Рисунок 6 -MainActivity.java
В нашем классе мы видим, что реализован метод onCreate - он вызывается, когда приложение создает и отображает Activity (на onCreateOptionsMenu пока не обращаем внимания). Посмотрим код реализации.
Первая строка: super.onCreate(savedInstanceState); - конструктор родительского класса, выполняющий необходимые процедуры, его мы не трогаем. Нас интересует этот код: setContentView(R.layout.main);
Метод setContentView(int) - устанавливает содержимое Activity из layout-файла. Но в качестве аргумента мы указываем не путь к нашему layout-файлу (res/layout/main.xml), а константу, которая является ID файла. Это константа генерируется автоматически здесь gen/ru.startandroid.develop.LayoutFiles/R.java Рисунок 7.
Рисунок 7 -ID константа
Этот файл можно открыть и посмотреть, но менять его не стоит. В R классе будут храниться сгенерированные ID для всех ресурсов проекта (из папки res/*), чтобы мы могли к ним обращаться. Имена этих ID-констант совпадают с именами файлов ресурсов (без расширений).
19.09.13 Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"
Создаем новый слой показано на Рисунке 8.
Рисунок 8 - Слои
Откроется визард Рисунок 9.
Рисунок 9 - Визард
В поле File вводим имя файла: myscreen.xml и жмем Finish.
Новый layout-файл должен сразу открыться. Добавим TextView и через Properties изменим его текст на: "Этот экран описан не в main.xml, а в myscreen.xml". При этом Eclipse будет подчеркивать этот текст желтым цветом и ругаться примерно так: [I18N] Hardcoded string "...", should use @string resource. Это он возмущен хардкодом, который мы тут устроили. Он хочет, чтобы использовали файлы ресурсов для всех надписей. Но это не критично
На Рисунке 10 изображено визуальное представление.
.
Рисунок 10 - Визуальное представление
Обязательно сохраняем. Чтобы в R.java появилась новая константа для этого файла - R.layout.myscreen.
Теперь настроим так, чтобы Activity использовало новый файл myscreen.xml, а не main.xml. Откроем MainActivity.java и поменяем аргумент метода setContentView. Замените "R.layout.main", на "R.layout.myscreen" (ID нового layout-файла). Должно получиться так Рисунок 11.
Рисунок 11 - Изменение Activity
20.09.13 Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"
Сохраняем, запускаем приложение. Видим, что теперь оно отображает содержимое из myscreen.xml, т.к. мы явно ему это указали в методе setContentView, который выполняется при создании (onCreate) Activity Рисунок 12.
Рисунок 12 - Представление в эмуляторе
Layout-файл в виде XML
Открыв файл main.xml, вы видите его визуальное представление. Т.е. некий предпросмотр, как это будет выглядеть на экране. Снизу вы можете видеть две вкладки - Graphical Layout и main.xml. Откройте main.xml
Рисунок 13 - Открытие main
Мы видим достаточно читабельное xml-описание всех View нашего layout-файла. Названия xml-элементов - это классы View-элементов, xml-атрибуты - это параметры View-элементов, т.е. все те параметры, что мы меняем через вкладку Properties. Также вы можете вносить изменения прямо сюда и изменения будут отображаться в Graphical Layout. Например изменим текст у TextView. Вместо ссылки на константу, вставим свой текст "Какой-то текст" Рисунок 14
Рисунок 14 - Пример изменений
Сохраняем. Открываем Graphical Layout и наблюдаем изменения. Рисунок15.
Рисунок 15 - Визуальный вид
Layout-файл при смене ориентации экрана
21.09.13 Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"
По умолчанию мы настраиваем layout-файл под вертикальную ориентацию экрана. Но что будет если мы повернем смартфон и включится горизонтальная ориентация? Давайте смотреть. Изменим myscreen.xml. Добавим вертикальный ряд кнопок и изменим надпись.
Листинг
xml-код <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Вертикальная ориентация экрана"> </TextView> <LinearLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/linearLayout1" android:orientation="vertical"> <Button android:text="Button1" android:id="@+id/button1" android:layout_height="100dp" android:layout_width="100dp"> </Button> <Button android:text="Button2" android:id="@+id/button2" android:layout_height="100dp" android:layout_width="100dp"> </Button> <Button android:text="Button3" android:id="@+id/button3" android:layout_height="100dp" android:layout_width="100dp"> </Button> <Button android:text="Button4" android:id="@+id/button4" android:layout_height="100dp" android:layout_width="100dp"> </Button> </LinearLayout> </LinearLayout>
Запустим приложение. В вертикальной ориентации все ок. Рисунок 16.
Рисунок 16 - Вертикальная орентация
Нажмем в эмуляторе CTRL+F12, ориентация сменилась на горизонтальную и наши кнопки уже не влезают в экран (эмулятор версии 2.3.3 глючит и смена ориентации срабатывает не всегда)
Т.е. нам необходим еще один layout-файл, который был бы заточен под горизонтальную ориентацию и в нашем случае вывел бы кнопки горизонтально.
Но как дать знать Activity, что она в вертикальной ориентации должна использовать один layout-файл, а в горизонтальной - другой? Об этом за нас уже подумали создатели Андроид. Необходимо создать папку res/layout-land, а в ней создать layout файл с тем же именем, что и основной. Этот файл будет использован в горизонтальной ориентации.
23.09.13 Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"
Создаем папку: правой кнопкой на res, New > Folder, Folder name = layout-land, жмем Finish.
Далее создадим файл res/layout-land/myscreen.xml и настроим его под горизонтальную ориентацию. Аналогично, как и в первый раз, жмем кнопку создания файла. Откроется визард.
Вводим имя файла: myscreen.xml
Рисунок 17 - Окно визорда
Визард может ругнуться, что есть уже такой файл - The destination file already exists. Это он углядел ранее созданный файл res/layout/myscreen.xml. Нам надо ему сообщить, что новый файл предназначен для папки res/layout-land, а не res/layout. Жмем Next
А здесь уже руками внизу допишите приставку -land, чтобы получилось res/layout-land Рисунок 18.
Рисунок 18 - Выбор настроек
Жмем Finish и получаем готовый файл. Рисунок 19.
Рисунок 19 - Готовый файл
24.09.13 Урок "Layout-файл в Activity. XML представление. Смена ориентации экрана"
Поместите этот xml-код в файл и сохраните файл, чтобы получить такую же картинку, как выше:
Листинг
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Горизонтальная ориентация экрана"> </TextView> <LinearLayout android:layout_height="wrap_content" android:layout_width="match_parent" android:id="@+id/linearLayout1" android:orientation="horizontal"> <Button android:text="Button1" android:id="@+id/button1" android:layout_height="100dp" android:layout_width="100dp"> </Button> <Button android:text="Button2" android:id="@+id/button2" android:layout_height="100dp" android:layout_width="100dp"> </Button> <Button android:text="Button3" android:id="@+id/button3" android:layout_height="100dp" android:layout_width="100dp"> </Button> <Button android:text="Button4" android:id="@+id/button4" android:layout_height="100dp" android:layout_width="100dp"> </Button> </LinearLayout> </LinearLayout>
Запустим приложение. Activity читает layout-файл, который мы указывали в методе setContentView, т.е. myscreen.xml и отображает его содержимое. Переключим ориентацию CTRL+F12. Activity понимает, что находится в горизонтальной ориентации, ищет в папке layout-land файл myscreen.xml и использует уже его. Рисунок 20.
Рисунок 20 - Экран исполнения
25.09.13 Разработка визуального интерфейса для приложения
Было выдано задание, разработать визуальный интерфейс приложения "Навигатор по достопримечательностям Сочи". Разработка началась с набросков как оно должно выглядеть, и какие компоненты должны присутствовать на форме.
26.09.13 Разработка визуального интерфейса для приложения
Создание первого макета приложения в Mapper.
Mapper - программный пакет, геоинформационная система (ГИС), работающая под Windows. Программа позволяет обрабатывать векторную и растровую информацию, представляет данные, имеет возможность конвертации форматов, предоставляет другие функции типичные для ГИС.
Предоставил куратору свои мысли о расположении компонентов на главной форме и примеры информации. Рисунок 21.
Рисунок 21 - Первый макет
27.09.13 Разработка визуального интерфейса для приложения
На первой форме предполагалось расположить выбор информации, которая должна быть предоставлена и картинка представления. 2 форма должна выводить информацию по выбранной области, по нажатию на картинку та увеличивается, и листать все виды информации по выбранной области.
28.09.13 Визуализация компонентов интерфейса
После разработки макета начал создание визуальных компонентов, таких как кнопки, картинки, фон и т.д. Начал сбор информации и компонентов к проекту.
30.09.13 Урок "Работаем с элементами экрана из кода"
Чтобы обратиться к элементу экрана из кода, нам нужен его ID. Он прописывается либо в Properties, либо в layout-файлах, на усмотрение. Для ID существует четкий формат - @+id/name, где + означает, что это новый ресурс, и он должен добавиться в R.java класс, если он там еще не существует. Открываем main.xml, для TextView укажем ID = @+id/myText и сохраняем. Рисунок 22.
Рисунок 22 - TextView
31.09.13 Урок "Работаем с элементами экрана из кода"
Теперь открываем R.java и видим, что для класса id появилась константа myText. Т.е. чтобы к ней обратиться, надо написать R.id.myText. Рисунок 23.
Рисунок 23 - R.java
1.10.13 Урок "Работаем с элементами экрана из кода"
Она связана с элементом TextView и мы можем ее использовать, чтобы обратиться к элементу программно. Для этого нам понадобится метод findViewById. Он по ID возвращает View. Пишем вызов этого метода. Открываем MainActivity.java и после строки с вызовом метода setContentView напишем:
View myTextView = findViewById(R.id.myText);
Если View подчеркнуто красным, то скорей всего этот класс не добавлен в секцию import. Нажмите CTRL+SHIFT+O для автоматического обновления импорта.
2.10.13 Урок "Работаем с элементами экрана из кода"
Теперь myTextView (типа View) - это наш TextView на экране. Но тип View - это предок для TextView (и остальных View-элементов). И он нам не подходит, если мы хотим проделывать операции соответствующие TextView. Поэтому нам необходимо преобразование View в TextView. Изменим наш код на следующий:
TextView myTextView = (TextView) findViewById(R.id.myText);
Теперь myTextView имеет тип TextView, а результат метода findViewById мы преобразуем из View в TextView. Теперь мы можем применять к myTextView методы класса TextView. Для примера возьмем метод setText. Сейчас отображаемый текст = Hello World, MainActivity!. Мы его программно поменяем на New text in TextView
myTextView.setText("New text in TextView");
Сохраняем, запускаем (CTRL+F11) и видим, что текст изменился. Рисунок 24.
Рисунок 24 - Окно эмулятора
3.10.13 Урок "Работаем с элементами экрана из кода"
Добавляем на экран кнопку (Button), Id = @+id/myBtn, текст оставим по умолчанию. Сохраняем - CTRL+SHIFT+S (если не сохранить, то в R.java не появится ID).Пишем код:
Button myBtn = (Button) findViewById(R.id.myBtn);
Так, кнопку мы нашли, теперь изменяем ее текст:
myBtn.setText("My button");
4.10.13 Урок "Работаем с элементами экрана из кода"
Запускаем приложение. Текст на кнопке поменялся, на кнопку можно понажимать, но ничего происходить не будет. Т.к. мы нигде не указывали, что надо делать при нажатии. пока давайте сделаем кнопку неактивной.
myBtn.setEnabled(false);
5.10.13 Урок "Работаем с элементами экрана из кода"
Мы поменяли параметр Enabled. Теперь на кнопку нельзя нажать. Сохраним,запустим и убедимся. Рисунок 25.
Рисунок 25 - Неактивная кнопка
7.10.13 Урок "Работаем с элементами экрана из кода"
Добавим CheckBox, id = @+id/myChb. По умолчанию галочка не стоит. Давайте поставим ее программно, для этого используется метод setChecked, который меняет параметр Checked. CheckBox myChb = (CheckBox) findViewById(R.id.myChb);
myChb.setChecked(true);
8.10.13 Урок "Работаем с элементами экрана из кода"
Запустив приложение видим, что код сработал. Как видите - все несложно.Используем метод findViewById, чтобы по ID получить объект соответствующий какому-либо View-элементу(Button, TextView, CheckBox) и далее вызываем необходимые методы объектов (setText, setEnabled, setChecked).
9.10.13 Урок "Работаем с элементами экрана из кода"
В итоге должен получиться такой код:
Листинг
package ru.startandroid.develop.viewbyid;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.TextView;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView myTextView = (TextView) findViewById(R.id.myText);
myTextView.setText("New text in TextView");
Button myBtn = (Button) findViewById(R.id.myBtn);
myBtn.setText("My button");
myBtn.setEnabled(false);
CheckBox myChb = (CheckBox) findViewById(R.id.myChb);
myChb.setChecked(true);
}
}
10.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
Расположение View-элементов на экране зависит от ViewGroup (Layout), в которой они находятся. В этом уроке мы рассмотрим основные виды Layout.
LinearLayout - отображает View-элементы в виде одной строки (если он Horizontal) или одного столбца (если он Vertical). TableLayout - отображает элементы в виде таблицы, по строкам и столбцам.
RelativeLayout - для каждого элемента настраивается его положение относительно других элементов.
AbsoluteLayout - для каждого элемента указывается явная позиция на экране в системе координат (x,y)
LinearLayout (LL)
Этот вид ViewGroup по умолчанию предлагается при создании новых layout-файлов. Он действительно удобен и достаточно гибок, чтобы создавать экраны различной сложности. LL имеет свойство Orientation, которое определяет, как будут расположены дочерние элементы - горизонтальной или вертикальной линией.
Откроем layout-файл main.xml, и поместите в него следующий код:
Листинг
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
</LinearLayout>
Теперь корневой элемент у нас LinearLayout с вертикальной ориентацией.
Перетащите слева в корневой LinearLayout три кнопки. Они выстроились вертикально. Рисунок 26.
Рисунок 26 - Вертикальное положение
Теперь в Properties меняем для LL свойство Orientation на horizontal и сохраняем (CTRL+SHIFT+S) - кнопки выстроились горизонтально. Рисунок 27.
Рисунок 27 - Горизонтальное положение
GroupView можно вкладывать друг в друга. Вложим в один LL два других. Удалите в main.xml все элементы (три кнопки) кроме корневого LL. Ориентацию корневого LL укажем вертикальную и добавим в него два новых горизонтальных LL. В списке элементов слева они находятся в разделе Layouts. Напоминаю, что вы можете перетаскивать элементы из списка не только на экран, но и на конкретный элемент на вкладке Outline.
11.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
В каждый горизонтальный LL добавим по три кнопки. Получилось два горизонтальных ряда кнопок. Рисунок 28.
Рисунок 28 - Два горизонтальных ряда
TableLayout (TL). TL состоит из строк TableRow (TR). Каждая TR в свою очередь содержит View-элементы, формирующие столбцы. Т.е. кол-во View в TR - это кол-во столбцов. Но кол-во столбцов в таблице должно быть равным для всех строк. Поэтому, если в разных TR разное кол-во View-элементов (столбцов), то общее кол-во определяется по TR с максимальным кол-вом. Рассмотрим на примере.
Создадим layout-файл tlayout.xml. с корневым элементом TableLayout. Рисунок 29.
Рисунок 29 - TabletLayout
Добавим в корневой TableLayout три TableRow-строки (из раздела Layouts слева) и в каждую строку добавим по две кнопки. Результат: наша таблица имеет три строки и два столбца. Рисунок 30.
Рисунок 30 - Два вертикальных ряда
Добавим в первую строку еще пару кнопок. Кол-во столбцов для всех строк теперь равно 4, т.к. оно определяется по строке с максимальным кол-вом элементов, т.е. по первой строке. Для второй и третьей строки третий и четвертый столбцы просто ничем не заполнены. Рисунок 31.
Рисунок 31 - Совмещение рядов
12.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
Во вторую строку добавим TextView и Button, и текст в добавленном TextView сделаем пустым. В третьей строке сделаем тоже самое. Мы видим, что эти элементы легли в третий и четвертый столбец. И т.к. TextView у нас без текста и на экране не виден, кажется что третий столбец во второй и третьей строке пустой. Рисунок 32.
Рисунок 32 - Вариации выбора
Ширина столбца определяется по самому широкому элементу из этого столбца. Введем текст в один из TextView и видим, что он расширил столбец. Рисунок 33.
Рисунок 33 - Ввод текста в пустое поле
14.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
Убраны элементы четвертого столбца и построен такой экран. Рисунок 34.
Рисунок 34 - Колонки лесенкой
TL может содержать не только TR, но и обычные View. Добавьте, например, Button прямо в TL, а не в TR и увидите, что она растянулась на ширину всей таблицы.
RelativeLayout (RL)
В этом виде Layout каждый View-элемент может быть расположен определенным образом относительно указанного View-элемента.
Виды отношений:
1) слева, справа, сверху, снизу указанного элемента (layout_toLeftOf, layout_toRightOf, layout_above, layout_below)
2) выравненным по левому, правому, верхнему, нижнему краю указанного элемента (layout_alignLeft, layout_alignRight, layout_alignTop, layout_alignBottom)
3) выравненным по левому, правому, верхнему, нижнему краю родителя (layout_alignParentLeft, layout_alignParentRight, layout_alignParentTop, layout_alignParentBottom)
4) выравненным по центру вертикально, по центру горизонтально, по центру вертикально и горизонтально относительно родителя (layout_centerVertical, layout_centerHorizontal, layout_centerInParent)
Подробно можно почитать в хелпе.
15.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
Создадим rlayout.xml и скопируем туда такой xml-код:
Листинг
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/label"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Type here:">
</TextView>
<EditText
android:id="@+id/entry"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/label"
android:background="@android:drawable/editbox_background">
</EditText>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/entry"
android:layout_marginLeft="10dip"
android:text="OK">
</Button>
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/ok"
android:layout_toLeftOf="@+id/ok"
android:text="Cancel">
</Button>
</RelativeLayout>
Здесь у нас корневой элемент - RelativeLayout.
Получился такой экран: Рисунок 35.
Рисунок 35 - Экран с TextEditor
Нам интересен xml-код. Сразу кратко опишу незнакомые атрибуты и их значения:
android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/entry"
- слово android в названии каждого аттрибута - это namespace, я его буду опускать при объяснениях;
- id - это ID элемента;
- layout_width (ширина элемента) и layout_height (высота элемента) могут задаваться в асболютных значениях, а могут быть следующими:fill_parent (максимально возможная ширина или высота в пределах родителя) и wrap_content (ширина или высота определяется по содержимому элемента). В хелпе указывается, что есть еще match_parent. Это тоже самое, что и fill_parent. По каким-то причинам, разработчики системы решили, что название match_parent удобнее, и от fill_parent постепенно будут отказываться. А пока его оставили для совместимости. Так что запомните, что match_parent = fill_parent и в дальнейшем будем стараться использовать match_parent. Позже мы еще остановимся на этом и разберем подробнее.
Сейчас вернемся к нашим элементам. В примере мы видим TextView, EditText и два Button - OK и Cancel. Давайте подробно разберем интересующие нас атрибуты.
TextView android:id="@+id/label" - ID
android:layout_width="match_parent" - занимает всю доступную ему ширину (хоть это и не видно на экране); android:layout_height="wrap_content" - высота по содержимому; ни к чему никак не относится
EditText android:id="@+id/entry" - ID
android:layout_width="match_parent" - вся доступная ему ширина
android:layout_height="wrap_content" - высота по содержимому
android:layout_below="@id/label" - расположен ниже TextView (ссылка по ID)
Button_OK android:id="@+id/ok" - ID
android:layout_width="wrap_content" - ширина по содержимому android:layout_height="wrap_content" - высота по содержимому android:layout_below="@id/entry" - расположен ниже EditText
android:layout_alignParentRight="true" - выравнен по правому краю родителя
android:layout_marginLeft="10dip" - имеет отступ слева (чтобы Button_Cancel был не впритык)
Button_Cancel
android:layout_width="wrap_content" - ширина по содержимому android:layout_height="wrap_content" - высота по содержимому android:layout_toLeftOf="@id/ok" - расположен слева от Button_OK
android:layout_alignTop="@id/ok" - выравнен по верхнему краю Button_OK
16.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
Вы можете добавлять элементы и поэкспериментировать с их размещением.
Обратите внимание, что у View-элемента может не быть ID (android:id). Например, для TextView он обычно не нужен, т.к. они чаще всего статичны и мы к ним почти не обращаемся при работе приложения. Другое дело EditText - мы работаем с содержимым текстового поля, и Button - нам надо обрабатывать нажатия и соответственно знать, какая именно кнопка нажата. В будущем мы увидим еще одну необходимость задания ID для View-элемента.
17.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
AbsoluteLayout (AL)
Обеспечивает абсолютное позиционирование элементов на экране. Вы указываете координаты для левого верхнего угла компонента.
Создадим alayout.xml с корневым AbsoluteLayout. Рисунок 36.
Рисунок 36 - Создание Layout
18.10.13 Урок "Виды Layouts. Ключевые отличия и свойства"
Теперь попробуйте перетаскиванием подобавлять различные элементы на экран. Они не выстраиваются, как при LinearLayout или TableLayout, а ложатся там, куда вы их перетащили. Т.е. это абсолютное позиционирование. Рисунок 37.
Рисунок 37 - Набросок разных элементов
Открываем xml-код и видим, что для задания координат используются layout_x и layout_y.
Листинг
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="42dp"
android:layout_y="62dp"
android:text="Button">
</Button>
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="142dp"
android:layout_y="131dp"
android:text="TextView">
</TextView>
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="55dp"
android:layout_y="212dp"
android:text="CheckBox">
</CheckBox>
<RadioButton
android:id="@+id/radioButton1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_x="171dp"
android:layout_y="318dp"
android:text="RadioButton">
</RadioButton>
</AbsoluteLayout>
Поначалу кажется, что это наиболее удобный и интуитивно понятный способ расположения элементов на экране - они сразу располагаются там где надо. Но это только в случае, когда вы разрабатываете для экрана с конкретным разрешением. Если открыть такое приложение на другом экране, все элементы сместятся и получится не так, как вы планировали. Поэтому этот Layout не рекомендуется использовать. И его совместимость с будущими версиями Android не гарантируется.
19.10.13 Разработка визуального интерфейса для приложения
Продолжил разработку визуального интерфейса для программы "Навигатор по Сочи" куратор изменил задачу и выдал задание, поменять корденально весь предыдущий замысел в связи с этим пришлось по новый придумывать новый макет под другие задачи. Нарисовал приблизительный макет главного экрана в графическом редакторе. Рисунок 38.
Рисунок 38 - Визуальный макет главного экрана
21.10.13 Разработка визуального интерфейса для приложения
Начал работу по подбору изображений для приложения и остальных визуальных частей.
22.10.13 Разработка визуального интерфейса для приложения
Создал 3 макета заднего фона приложения. На рисунок 39 представлен один из видов.
66777
Рисунок 39 - Один из вариаций фона
23.10.13 Помощь в документации
Занимался перевод документации в электронный вид. Заполнением списков и переводом этих списков в массив на языке Java.
24.10.13 Помощь в документации
Сортировал документацию в алфавитном порядке и задавал ID обращения к каждой букве алфавита.
25.10.13 Разработка визуального интерфейса для приложения
Переработал задний фон с наставлением куратора, продолжил сортировку документации для внесения их в базу данных фирмы.
26.10.13 Помощь в документации
Подключался к удаленной базе данных для загрузки отсортированной информации.
28.10.13 Помощь в документации
Прослушивал курс лекций системного администратора по безопасности внутренней сети и особенностях ухода за оборудованием.
29.10.13 Разработка визуального интерфейса для приложения
Составлял базы маршрутов для отметки на карте с использованием выданных мне данных точек назначения.
30.10.13 Разработка визуального интерфейса для приложения
Вносил корректировки в базы.
31.10.13 Разработка визуального интерфейса для приложения
Подключал полученные базы к нажимному списку, для вывода их по нажатию определенной метки на карту в виде указателя место прибытия.
31.10.13 Разработка визуального интерфейса для приложения
Самостоятельно попробовал подключить этот список к карте, не получилось.
1.11.13 Разработка визуального интерфейса для приложения
Вместе с куратором разбирался, как делать подключение списков к карте получилось не очень, куратор сам подключил.
2.11.13 Разработка экрана загрузки
Начал разработку Boot Animation для дальнейшего встраивания в прошивку телефона.
Boot Animation - Загрузочный экран телефона.
3.11.13 Разработка экрана загрузки
Создал первое изображение, появляющееся на экране перед boot animation.Рисунок 40.
Рисунок 40 - До boot animation
4.11.13 Разработка экрана загрузки
Начал разработку анимированной части boot animation в Photoshop.
5.11.13 Разработка экрана загрузки
Получал Root права на тестовом устройстве для дальнейшей установки на него собственной boot animation.
6.11.13 Разработка экрана загрузки
Сделал набросок будущей boot animation начал ее реализовывать.
7.11.13 Разработка экрана загрузки
Установил набросок на тестовое устройство, показал куратору, получил одобрение.
8.11.13 Разработка визуального интерфейса для приложения
Создал первое окно программы после логотипа программы. Рисунок 41.
Рисунок 41 - Главное окно
9.11.13 Разработка визуального интерфейса для приложения
Начал создание анимированных кнопок. Рисунок 42.
10.11.13 Разработка визуального интерфейса для приложения
Исправление мелких недочетов в базе навигатора.
11.11.13 Разработка визуального интерфейса для приложения
Тестирование программы на разных устройствах с разным разрешением экранов и характеристиками для проверки работоспособности и качество встроенных изображений.
12.11.13 Разработка визуального интерфейса для приложения
Пересоздание всех элементов под разные разрешения.
13.11.13 Разработка визуального интерфейса для приложения
Обсуждение цветовой палитры программы и визуальных элементов с дизайнером, продолжение над работой boot animation и программой.
14.11.13 Сортировка документов
Сортировал документы проектов по алфавитному порядку на удаленном сервере.
15.11.13 Общение с коллективом
Ходил по офису наблюдал за работниками, спрашивал интересные моменты в той или иной области. Изучал устройство офиса работу персонала.
16.11.13 Наблюдение за установкой сервера
Наблюдал, как настраивали серверный ПК. Рисунок 43.
Характеристики
Платформа: SuperMicro SYS-6016T-URF
Процессор: 2х Intel Xeon E5620 2.4 Ghz
ОЗУ: 24Gb RAM ECC
HDD: 2Tb RAID10 из 4x 1Tb Seagate Constellation ES
ОС: Gentoo х64
Рисунок 43 - Представление ПК
17.11.13 Разработка визуального интерфейса для приложения
Удаленно подключался к серверу для тестирования работоспособности интерфейса и тестировал 5 выданных куратором программ.
Составлял списки багов этих программ.
18.11.13 Разработка визуального интерфейса для приложения
Писал отчет по наеденным ошибкам и причины вызова некоторых недочетов.
19.11.13 Разработка визуального интерфейса для приложения
Разработал несколько окон для программы, делал под все виды разрешения экрана и разные ориентации. 20.11.13 Разработка визуального интерфейса для приложения
Проверял работоспособность и визуальное представление программы на разных виртуальных машинах.
21.11.13 Разработка визуального интерфейса для приложения
Переделала интерфейс под большие разрешения и под планшеты основное окно программы. 22.11.13
23.11.13
ЗАКЛЮЧЕНИЕ
В соответствии с учебным планом в период с 1 сентября по 23 ноября проходила технологическая практика. За 12 недель были изучены азы языка программирования Java и применены к рабочим проектам. На протяжении всей практики проводилась консультация по прохождению учебной практики и оформлению отчетной документации на базе колледжа.
Отчетная документация была оформлена в соответствии с программой практики и по стандартам Павлодарского колледжа управления.
4
Документ
Категория
Рефераты
Просмотров
112
Размер файла
2 936 Кб
Теги
4курс, steym, отчет
1/--страниц
Пожаловаться на содержимое документа