Android осень 2013 лекция 7
Upcoming SlideShare
Loading in...5
×
 

Android осень 2013 лекция 7

on

  • 198 views

 

Statistics

Views

Total Views
198
Views on SlideShare
111
Embed Views
87

Actions

Likes
0
Downloads
6
Comments
0

1 Embed 87

https://tech-mail.ru 87

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Android осень 2013 лекция 7 Presentation Transcript

  • 1. Android GUI. Touch Handling. Лекция № 7
  • 2. View  Элементарный элемент UI  Прямоугольник  Сам себя рисует  Ловит события  Базовый класс для всех виджетов  Упорядочены в дерево  http://developer.android.com/reference/android/vie w/View.html 2
  • 3. ViewGroup  Layout  Невидимый сам по себе  LayoutParams  Сказать родительскому ViewGroup, как хотят располагаться view  Разные сабклассы для разных Layout  Управление жестами  http://developer.android.com/reference/android/vie w/ViewGroup.html 3
  • 4. Есть у любого View  Focus  Visibility  Paddings  Margins  Listeners  Id  Background 4
  • 5. Кастомизация View  Основные методы  onMeasure  onLayout  onDraw  Конструктор 5
  • 6. Measure pass  Проходит по всему дереву от корня  В конце каждая view знает свой размер(ширина и высота)  measure() может вызываться несколько раз  Метод onMeasure() вызывается из measure()  Должны вызвать setMeasuredDimension(int, int)  Два вспомогательных класса:  LayoutParams  MeasureSpec  UNSPECIFIED  EXACTLY  AT_MOST 6
  • 7. Measure pass - MeasureSpec  Определяет требования родительского view к дочернему  Состоит из size и mode  UNSPECIFIED  Родителю все равно какого размера ребенок  EXACTLY  Родитель точно указывает, каких он хочет размеров  AT_MOST  Не больше чем указанный размер 7
  • 8. Кастомизация ViewGroup  onLayout (boolean changed, int left, int top, int right, int bottom)  Вызываем у детей measure с MeasureSpec  Вызываем у детей layout  generateLayoutParams()  checkLayoutParams() 8
  • 9. Custom attributes  Кастомные атрибуты для View и ViewGroup  Можно объявлять в xml 9
  • 10. Touch Handling 10