我在我的Android应用程序中创建了一个具有基本上两种不同视图的自定义按钮。有一个图像用于未按下按钮时的图像和正在按下时使用的另一个图像。以下是我如何实现按钮以及它如何响应用户。Android - 自定义按钮卡住“按下”
private void registerListeners() {
calcButton.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
calcButton.requestFocusFromTouch();
calcButton.setImageResource(R.drawable.calc_button_pressed);
return false;
}
});
calcButton.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
calcButton.setImageResource(R.drawable.calc_button_not_pressed);
}
});
calcButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
mathCalculation();
calcButton.setImageResource(R.drawable.calc_button_not_pressed);
}
});
}
我的问题是,有一个“错误”,其中,如果用户触摸键并拖动他们的身影离按钮,按钮停留按下。我上面实现的一个解决方案是“setOnFocusChangeListener”,所以一旦用户选择了它,它会弹出。
我想拥有它,当用户在那里触摸按钮时,按钮弹出。
所有的建议都非常感谢!
谢谢,
P.s ...如果任何人想看到在行动中发生的事情,只需在android市场中搜索myProfit。这将是唯一的应用程序弹出。 – KevinM 2011-05-16 19:34:15