블로그 이미지
JoyfulLife

공지사항

최근에 받은 트랙백

글 보관함

calendar

1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

'onTouchListener'에 해당되는 글 1

  1. 2009.12.15 OnTouchListener 구현

OnTouchListener 구현

2009.12.15 14:34 | Posted by JoyfulLife
안드로이드에서 터치를 구현해보았다.
클릭으로 하려고 했는데 Fring 처럼 이쁘게 보이게 하기 위해서 버튼에 백그라운드 이미지를 넣으니 클릭감이 없어졌다.
클릭감을 주기 위해서 터치했을 때 배경 화면이 바껴서 내가 지금 터치를 했다는 것을 시각적으로 보여주려고 했다.

아래는 원본 소스이다. 특이한 점은 버튼마다 TouchListener 를 주지 않았다는 것이다.
onTouchListener를 하나 만들어서 View를 통해서 어디서 터치가 일어났는가 알아와서 버튼의 있는 그림을 바꿔 주는 것이다.
어떻게 하면 클릭된 객체를 알아올 수 있을까 고민을 했는데
간단하게
Button b=(Button)v
로 해결을 했다.

Button 도 View의 일종이어서 이런 코딩이 가능한 것 같다.

package com.testedittext;

import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnTouchListener;
import android.widget.Button;

public class edittexttest extends Activity {
    /** Called when the activity is first created. */
    Button b1;
    Button b2;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
         b1=(Button)findViewById(R.id.Button02);
         b2=(Button)findViewById(R.id.Button01);
         b1.setOnTouchListener(mTouchEvent);
         b2.setOnTouchListener(mTouchEvent);
      
    }
 
    private  OnTouchListener mTouchEvent = new OnTouchListener()
    {
        public boolean onTouch(View v, MotionEvent event)
        {
           
            Button b=(Button)v;
           
            int action=event.getAction();
           
            if(action==MotionEvent.ACTION_DOWN)
            {
                b.setBackgroundResource(R.drawable.backimg1);
                System.out.println("x="+event.getX()+" y="+event.getY());
            }
            else if(action==MotionEvent.ACTION_UP){
                b.setBackgroundResource(R.drawable.backimg2);
                System.out.println("x="+event.getX()+" y="+event.getY());
            }
            return true;
        }
    };
   
}
신고

'안드로이드' 카테고리의 다른 글

I can send my voice to another phone  (0) 2009.12.30
Notification fail  (0) 2009.12.23
OnTouchListener 구현  (0) 2009.12.15
ObjectOutputStream  (0) 2009.12.09
RC29로 다운 그레이드가 안됩니다.  (0) 2009.12.02
단말  (0) 2009.11.29
이전 1 다음

티스토리 툴바