- Урок 102. Touch – обработка касания
- Java Apps
- Search results for: » touch » in All Screen Java Apps Search in all Java Apps > Search with Google > Search in Java Games >
- TOUCH BOLT 1.7
- bantam Paint Touch
- New Piano Touch
- piano Touch New
- Opera Mini 5 Francais Tactile (touch)
- Touch Screen Calculator S60v5
- Touch Calculator
- Egg Timer Touch
- Touch Screen Calculator
- Multi Touch Piano
- PICCTI
- Pocket Quran
- Fare Calc
- touch-screen Dictionary
- Soft Touch Stopwatch
- Calculator V1.02
- Migg33 Touch Mobile App
- tcalc 60
- jfog vjs
- EPUB Reader
- SimpleIRC
- jFog
- Panini Touch
- Ayna MAP For Touch Phones
- Bhagavatam Mobile
- Mehrnoosh
- Greeper
- JAVA APPS JAVA GAMES SYMBIAN APPS ANDROID APPS
- PHONEKY ANDROID APP!
- Download your favorite Java apps for free on PHONEKY!
- Tags:
- Java Apps
- Showing This Week’s Top Rated 240×320 Java Apps:
- Entertainment
- Music
- Sports
- Internet
- Social
- Messaging
- SMS
- Graphics
- Photography
- Video
- Security
- Utilities
- Productivity
- House
- Tools
- Lifestyle
- Religion
- Facebook 3.2.1
- Nokia Store 3.30.2
- Facebook For Every Phone
- Whats App
- Dictionary English
- Moshaf Tafsir
- Nokia Browser New
- Prayer Times (Azan)
- Holy Bible ( New King James Version)
- biNu Sports
- Opera Mini 2.0
- Prophet Muhammad
- Opera Mini Beta
- QQ Browser
- Media Player
- Sahih Al-Bukhari — Hadith By Talalsrilan
- Concise English Dictionary
- Facebook Chat
- Opera Mini 5 By Mr. Mobile
- Java
- PoOL STar
- OPERA MINI 5 GPRS
- Moshaf Tafseer
- Free Airtel Live Access
- BlueChat — Bluetooth-chat
- Live Breaking News
- JAVA APPS JAVA GAMES SYMBIAN APPS ANDROID APPS
- PHONEKY ANDROID APP!
- Download your favorite Java apps for free on PHONEKY!
- Tags:
Урок 102. Touch – обработка касания
Раньше мы для View-компонентов использовали OnClickListener и ловили короткие нажатия. Теперь попробуем ловить касания и перемещения пальца по компоненту. Они состоят из трех типов событий:
— нажатие (палец прикоснулся к экрану)
— движение (палец движется по экрану)
— отпускание (палец оторвался от экрана)
Все эти события мы сможем ловить в обработчике OnTouchListener, который присвоим для View-компонента. Этот обработчик дает нам объект MotionEvent, из которого мы извлекаем тип события и координаты.
На этом уроке рассмотрим только одиночные касания. А мультитач – на следующем уроке.
Project name: P1021_Touch
Build Target: Android 2.3.3
Application name: Touch
Package name: ru.startandroid.develop.p1021touch
Create Activity: MainActivity
strings.xml и main.xml нам не понадобятся, их не трогаем.
Кодим MainActivity.java:
package ru.startandroid.develop.p1021touch; import android.app.Activity; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.widget.TextView; public class MainActivity extends Activity implements OnTouchListener < TextView tv; float x; float y; String sDown; String sMove; String sUp; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) < super.onCreate(savedInstanceState); tv = new TextView(this); tv.setOnTouchListener(this); setContentView(tv); >@Override public boolean onTouch(View v, MotionEvent event) < x = event.getX(); y = event.getY(); switch (event.getAction()) < case MotionEvent.ACTION_DOWN: // нажатие sDown = "Down: " + x + "," + y; sMove = ""; sUp = ""; break; case MotionEvent.ACTION_MOVE: // движение sMove = "Move: " + x + "," + y; break; case MotionEvent.ACTION_UP: // отпускание case MotionEvent.ACTION_CANCEL: sMove = ""; sUp = "Up: " + x + "," + y; break; >tv.setText(sDown + "\n" + sMove + "\n" + sUp); return true; > >
MainActivity реализует интерфейс OnTouchListener для того, чтобы выступить обработчиком касаний.
В onCreate мы создаем новый TextView, сообщаем ему, что обработчиком касаний будет Activity, и помещаем на экран.
Интерфейс OnTouchListener предполагает, что Activity реализует его метод onTouch. На вход методу идет View для которого было событие касания и объект MotionEvent с информацией о событии.
Методы getX и getY дают нам X и Y координаты касания. Метод getAction дает тип события касания:
ACTION_DOWN – нажатие
ACTION_MOVE – движение
ACTION_UP – отпускание
ACTION_CANCEL – практически никогда не случается. Насколько я понял, возникает в случае каких-либо внутренних сбоев, и следует трактовать это как ACTION_UP.
В случае ACTION_DOWN мы пишем в sDown координаты нажатия.
В случае ACTION_MOVE пишем в sMove координаты точки текущего положения пальца. Если мы будем перемещать палец по экрану – этот текст будет постоянно меняться.
В случае ACTION_UP или ACTION_CANCEL пишем в sUp координаты точки, в которой отпустили палец.
Все это в конце события выводим в TextView. И возвращаем true – мы сами обработали событие.
Теперь мы будем водить пальцем по экрану (курсором по эмулятору) в приложении, и на экране увидим координаты начала движения, текущие координаты и координаты окончания движения.
Все сохраним и запустим приложение.
Ставим палец (курсор) на экран
Если вчерашний вечер не удался, голова не болит, рука тверда и не дрожит :), то появились координаты нажатия.
Если же рука дрогнула, то появится еще и координаты перемещения.
Продолжаем перемещать палец и видим, как меняются координаты Move.
Теперь отрываем палец от экрана и видим координаты точки, в которой это произошло
В целом все несложно. При мультитаче процесс немного усложнится, там уже будем отслеживать до 10 касаний.
Если вы уже знакомы с техникой рисования в Android, то вполне можете создать приложение выводящее на экран геометрическую фигуру, которую можно пальцем перемещать. Простейший пример реализации можно посмотреть тут: http://forum.startandroid.ru/viewtopic.php?f=28&t=535.
— обрабатываем множественные касания
Присоединяйтесь к нам в Telegram:
— в канале StartAndroid публикуются ссылки на новые статьи с сайта startandroid.ru и интересные материалы с хабра, medium.com и т.п.
— в чатах решаем возникающие вопросы и проблемы по различным темам: Android, Compose, Kotlin, RxJava, Dagger, Тестирование, Performance
— ну и если просто хочется поговорить с коллегами по разработке, то есть чат Флудильня
Java Apps
Search results for: » touch » in All Screen Java Apps
Search in all Java Apps >
Search with Google >
Search in Java Games >
TOUCH BOLT 1.7
bantam Paint Touch
New Piano Touch
piano Touch New
Opera Mini 5 Francais Tactile (touch)
Touch Screen Calculator S60v5
Touch Calculator
Egg Timer Touch
Touch Screen Calculator
Multi Touch Piano
PICCTI
Pocket Quran
Fare Calc
touch-screen Dictionary
Soft Touch Stopwatch
Calculator V1.02
Migg33 Touch Mobile App
tcalc 60
jfog vjs
EPUB Reader
SimpleIRC
jFog
Panini Touch
Ayna MAP For Touch Phones
Bhagavatam Mobile
Mehrnoosh
Greeper
JAVA APPS JAVA GAMES SYMBIAN APPS ANDROID APPS
PHONEKY ANDROID APP!
Download your favorite Java apps for free on PHONEKY!
Tags:
Download TOUCH BOLT 1.7, bantam Paint Touch, New Piano Touch, piano Touch New, Opera Mini 5 Francais Tactile (touch), Touch Screen Calculator S60v5, Touch Calculator, Egg Timer Touch, Touch Screen Calculator, Multi Touch Piano, PICCTI, Pocket Quran, Fare Calc, touch-screen Dictionary, Soft Touch Stopwatch, Calculator V1.02, Migg33 Touch Mobile App, tcalc 60, jfog vjs, EPUB Reader, SimpleIRC, jFog, Panini Touch, Ayna MAP For Touch Phones, Bhagavatam Mobile, Mehrnoosh, Greeper Apps For Free!
Download app for mobiles GreeperDownload app for mobiles — one of the best Java Applications for free! You will certainly enjoy its fascinating features. At PHONEKY Free Java App Store, you can download mobile applications for any Java supported mobile phone free of charge. Nice and usefull features of this app will keep you captivated for a very long time. At PHONEKY, you will find many other apps and games of different genres, from Education and Entertainment to the Security and Navigation Java apps. To see the Top 10 best Java software for mobile phones, just sort apps by popularity.
Java Apps
Showing This Week’s Top Rated 240×320 Java Apps:
Entertainment
Music
Sports
Internet
Social
Messaging
SMS
Graphics
Photography
Video
Security
Utilities
Productivity
House
Tools
Lifestyle
Religion
Facebook 3.2.1
Nokia Store 3.30.2
Facebook For Every Phone
Whats App
Dictionary English
Moshaf Tafsir
Nokia Browser New
Prayer Times (Azan)
Holy Bible ( New King James Version)
biNu Sports
Opera Mini 2.0
Prophet Muhammad
Opera Mini Beta
QQ Browser
Media Player
Sahih Al-Bukhari — Hadith By Talalsrilan
Concise English Dictionary
Facebook Chat
Opera Mini 5 By Mr. Mobile
Java
PoOL STar
OPERA MINI 5 GPRS
Moshaf Tafseer
Free Airtel Live Access
BlueChat — Bluetooth-chat
Live Breaking News
JAVA APPS JAVA GAMES SYMBIAN APPS ANDROID APPS
PHONEKY ANDROID APP!
Download your favorite Java apps for free on PHONEKY!
Tags:
Download Facebook 3.2.1, Nokia Store 3.30.2, Whatsapp, Facebook For Every Phone, Whats App, Dictionary English, Moshaf Tafsir, Nokia Browser New, Prayer Times (Azan), Holy Bible ( New King James Version), biNu Sports, Opera Mini 2.0, Prophet Muhammad, Opera Mini Beta, QQ Browser, Media Player, Sahih Al-Bukhari — Hadith By Talalsrilan, Concise English Dictionary, Facebook Chat, Opera Mini 5 By Mr. Mobile, Java, PoOL STar, OPERA MINI 5 GPRS, Moshaf Tafseer, Free Airtel Live Access, BlueChat — Bluetooth-chat, Live Breaking News Apps For Free!
Download app for mobiles Live Breaking NewsDownload app for mobiles — one of the best Java Applications for free! You will certainly enjoy its fascinating features. At PHONEKY Free Java App Store, you can download mobile applications for any Java supported mobile phone free of charge. Nice and usefull features of this app will keep you captivated for a very long time. At PHONEKY, you will find many other apps and games of different genres, from Education and Entertainment to the Security and Navigation Java apps. To see the Top 10 best Java software for mobile phones, just sort apps by popularity.