您的位置:首页 > 移动开发 > Android开发

Android Button2.监听事件

2016-01-22 20:09 465 查看
public class Main extends Activity implements OnClickListener, OnTouchListener,
OnFocusChangeListener, OnKeyListener {
/** Called when the activity is first created. */
private int value = 1;// 用于改变按钮的大小
private Button commonButton;
private Button imageButton;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
commonButton = (Button) this.findViewById(R.id.commonbutton);
imageButton = (Button) this.findViewById(R.id.imagebutton);
commonButton.setOnClickListener(this);
imageButton.setOnClickListener(this);
imageButton.setOnTouchListener(this);
imageButton.setOnFocusChangeListener(this);
imageButton.setOnKeyListener(this);
}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Button button = (Button) v;
if (value == 1
&& button.getWidth() == getWindowManager().getDefaultDisplay()
.getWidth()) {
value = -1;
} else if (value == -1 && button.getWidth() < 100) {
value = 1;
}
button.setWidth(button.getWidth() + (int) (button.getWidth() * 0.1)
* value);
button.setHeight(button.getHeight() + (int) (button.getHeight() * 0.1)
* value);
}

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
// TODO Auto-generated method stub
if (KeyEvent.ACTION_DOWN == event.getAction()) {
v.setBackgroundResource(R.drawable.button3);
} else if (KeyEvent.ACTION_UP == event.getAction()) {
v.setBackgroundResource(R.drawable.button2);
}
return false;
}

@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
if (hasFocus) {
imageButton.setBackgroundResource(R.drawable.button2);
} else {
imageButton.setBackgroundResource(R.drawable.button1);
}
}

@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_UP) {
v.setBackgroundResource(R.drawable.button1);
} else if (event.getAction() == MotionEvent.ACTION_DOWN) {
v.setBackgroundResource(R.drawable.button2);
}
return false;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: