Hirdetés
- Magga: PLEX: multimédia az egész lakásban
- Brogyi: CTEK akkumulátor töltő és másolatai
- Luck Dragon: Asszociációs játék. :)
- GoodSpeed: Te hány éves vagy?
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- vrob: Az utolsó DOS játékok 1996 - 1997-ben, egy korszak lezárul
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- Mr Dini: Mindent a StreamSharkról!
- gban: Ingyen kellene, de tegnapra
Új hozzászólás Aktív témák
-
thon73
tag
Vicces, most derült ki mennyire topa vagyok a multithread-del, mégis megosztom egy volt ötletem. Én scrolloztatni akartam a képet, amíg a delikvens hosszan nyom egy pontot. A longpress nem jó, mert az csak egy dolgot csinál meg utána, aztán megint vár. Sztem. neked ugyanez kell fordítva: Ha érintés történik, akkor megszakítod a thread-et.
Egy két kódrészlet:TouchThread touchThread;
@Override
public boolean onTouchEvent(MotionEvent event)
{
...
case MotionEvent.ACTION_DOWN:
touchDirection = 1;
touchThread = new TouchThread();
touchThread.start();
break;
case MotionEvent.ACTION_UP:
if (touchThread != null)
touchThread.interrupt();
break;
}
...
}
private class TouchThread extends Thread
{
@Override
public void run()
{
// Csak vár, hogy hosszú nyomás legyen
for (int cnt=0; cnt<3; cnt++)
{
sleep(100);
if (isInterrupted())
{
touchThread = null;
return;
}
}
// Innentől történik a gyorsuló görgetés
int pause = 150;
while(true)
{
for (int cnt=0; cnt<15; cnt++)
{
sleep(pause);
if (isInterrupted())
{
touchThread = null;
return;
}
// Itt kérjük meg a görgetést az UI száltól !!!!!!
touchThreadHandler.sendEmptyMessage(0);
}
if (pause > 85)
pause -= 30;
}
}
// A görgetést a Handler fogja elvégezni
private Handler touchThreadHandler = new Handler()
{
@Override
public void handleMessage(Message msg)
{
if (touchDirection >= 0)
rollForwardLine();
else
rollBackwardLine();
touchState = 0;
invalidate();
}
}
}Ezt elég régen írtam, aztán megszakadt a dolog. Egyébként nem csak az időzítést tudja, hanem egyre gyorsul is a görgetés, amíg nyomod a képet.
Bocs, hogy a kód összetöredezett, amíg kiszemezgettem, de sztem a lényeg érthető. Mint kiderült, nem vagyok (még) teljesen otthon a thread-ekben; (ha valaki hibát talál, és szól, köszönöm); de a kód prímán működik.
Új hozzászólás Aktív témák
Hirdetés
- ASUS PRIME B460M-A R2.0 - OEM, Magyarul se doboz, se io shield, se semmi. CSAK A LAP
- Intel Core I5 10600K - 4.8Ghz Turbó Foxpost Az Árban
- Amd Wraith Prism Processzor Hűtő - AM4 Teljesen Új
- Iphone 14 Pro Független 128GB & 100%-os új gyári akksi HIBÁTLAN
- Intel Core i9-9900KF 8-Core 3.6GHz (16M Cache, up to 5.00 GHz) Processzor!
- Telefon felváráslás!! iPhone 15/iPhone 15 Plus/iPhone 15 Pro/iPhone 15 Pro Max
- Thermalright Aqua Elite 360 V3
- iPhone XR 64GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3993, 100% Akkumulátor
- Apple iPhone SE 2020 128 GB Piros 1 év Garancia Beszámítás Házhozszállítás
- DOKKOLÓ BAZÁR! Lenovo, HP, DELL és egyéb más dokkolók (TELJES SZETTEK)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

