Daft Engine - Köra event när man trycker på en knapp

Diskussion i 'Spelutveckling' startad av Rynkan, 3 maj 2010.

  1. Rynkan

    Rynkan Kid Droid Medlem

    Blev medlem:
    7 apr 2010
    Inlägg:
    31
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag har ju gjort en app "Daft Engine", om ni provar det så börjar det ljuda efter man tryckt på knappen, allså på "button_release".

    Finns där något sätt att göra det omvända? (button_pressed)
     
  2. johannilsson

    johannilsson Adult Droid Medlem

    Blev medlem:
    23 jun 2009
    Inlägg:
    577
    Mottagna gillanden:
    8

    MINA ENHETER

    Du kan sätta en lyssnare för on click, typ:

    Kod:
    button.setOnClickListener(new OnClickListener() { pressed } )
    
    Eller tolkar jag din fråga fel?
     
  3. jhil

    jhil Kid Droid Medlem

    Blev medlem:
    9 jan 2010
    Inlägg:
    66
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag skulle gissa på att det du vill göra är att ha en onTouchListener (och kolla att det är rätt typ av action), om du vill spela såfort man nuddar knappen och inte när man släpper den.
     
  4. Rynkan

    Rynkan Kid Droid Medlem

    Blev medlem:
    7 apr 2010
    Inlägg:
    31
    Mottagna gillanden:
    0

    MINA ENHETER

    Det är som koden är just nu, med detta så gör den saker när en Button() har blivit tryckt :)tryckt+släppt)

    Det jag är ute efter är att jag vill göra något så fort en knapp blivit tryckt ned.
     
  5. Rynkan

    Rynkan Kid Droid Medlem

    Blev medlem:
    7 apr 2010
    Inlägg:
    31
    Mottagna gillanden:
    0

    MINA ENHETER

    vet inte hur jag ska förtydliga men jag letar efter något i stil med button.setOnPressedDownListener();
     
  6. tomas_b

    tomas_b Kid Droid Medlem

    Blev medlem:
    23 mar 2010
    Inlägg:
    97
    Mottagna gillanden:
    4

    MINA ENHETER

    jhils tips är precis det du är ute efter då
     
  7. Rynkan

    Rynkan Kid Droid Medlem

    Blev medlem:
    7 apr 2010
    Inlägg:
    31
    Mottagna gillanden:
    0

    MINA ENHETER

    Nej, det gör det ju inte? jhils förslag kör jag redan och eventet "triggas" efter man släppt en knapp, jag är ute efter att trigga ett event så fort man rör vid/trycker ner en knapp.

    I en knapp-tryckning så gör:
    - pressed (när du först rör vid knappen) <-- detta är vad jag vill upptäcka
    - released (när man släpper knappen med sitt finger, detta upptäcks av jhils förslag (det jag använder nu))
     
  8. jhil

    jhil Kid Droid Medlem

    Blev medlem:
    9 jan 2010
    Inlägg:
    66
    Mottagna gillanden:
    0

    MINA ENHETER

    Såhär tänkte jag mig,
    Kod:
        Button b = (Button) findViewById(R.id.button);
        b.setOnTouchListener(new OnTouchListener() {
    
        	@Override
        	public boolean onTouch(View v, MotionEvent event) {
        		if (event.getAction() == MotionEvent.ACTION_DOWN)
        		{
        			Log.d("foo", "jag blev just nedtryckt :~");
        		}
        		return false;
        	}
        });
    
    Du blandade nog bara ihop mig och johannilsson :)
     
  9. Rynkan

    Rynkan Kid Droid Medlem

    Blev medlem:
    7 apr 2010
    Inlägg:
    31
    Mottagna gillanden:
    0

    MINA ENHETER

    if (event.getAction() == MotionEvent.ACTION_DOWN){}

    GAH! så enkelt!? ska sluta utveckla :(