2013-12-16 79 views
0

我試圖在觸摸監聽器上添加我的應用程序imageview,但它不工作。我嘗試創建和手勢監聽器上的觸摸監聽器,但無法弄清楚。 我希望我的應用程序能夠在點擊圖像時變成新的意圖。在觸摸監聽器上的Android imageview

public class MainActivity extends Activity { 
private GestureDetectorCompat mDetector; 
private Intent intent; 
private MediaPlayer mMediaPlayer = null; 
int length; 
View img; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    ImageView view = (ImageView) findViewById(R.id.img1); 
    /*view.setOnTouchListener(new OnTouchListener() 
     { 

      @Override 
      public boolean onTouch(View v, MotionEvent event) 
      { 
       intent = new Intent(MainActivity.this, MyListActivity.class); 
       mMediaPlayer.pause(); 

       length=mMediaPlayer.getCurrentPosition(); 



       startActivity(intent); 
       return true; 
      } 
     });*/ 
    // Hides the title bar (must be used before setContentView) 
    // Requires import android.view.Window 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    setContentView(R.layout.main); 

    //mDetector = new GestureDetectorCompat(this, new MyGestureListener()); 

    mMediaPlayer = MediaPlayer.create(this, R.raw.background); 

    mMediaPlayer.start(); 
} 

//@Override 
public boolean onTouchEvent(MotionEvent event){ 
    this.mDetector.onTouchEvent(event); 
    return super.onTouchEvent(event); 
} 



class MyGestureListener extends SimpleOnGestureListener { 
    @Override 
    public boolean onDown(MotionEvent event) { 

     return true; 
    } 

    @Override 
    public boolean onSingleTapConfirmed(MotionEvent event) { 
     intent = new Intent(MainActivity.this, MyListActivity.class); 
     mMediaPlayer.pause(); 

     length=mMediaPlayer.getCurrentPosition(); 



     startActivity(intent); 
     return true; 
    } 
} 

@Override 
protected void onResume() { 
    super.onResume(); 
    mMediaPlayer.seekTo(length); 
    mMediaPlayer.start(); 
} 

}

回答

1

設置你的onClickListener這樣的:

view.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     intent = new Intent(this, MyListActivity.class); 
     startActivity(intent); 
    } 
}); 

執行此操作後的setContentView()。

+0

它工作得很好。非常感謝你!! – user3108523

+0

不客氣。 – Melquiades