我看过几篇文章,例如这篇one,描述了如何使用按钮处理长按事件。我可以遵循这些指示,但我想知道是否可以像处理点击一样这样做。我处理点击的方式是用XML定义处理程序:
<Button
android:id="@+id/btn_NextLift"
...
android:onClick="btn_NextLiftClick" />
然后在代码中:
public void btn_NextLiftClick(View vw_Current)
{...}
我确实在xml中看到boolean属性longClickable但是我看不到在哪里定义事件处理程序所以...... ???
TIA JB
答案 0 :(得分:17)
您无法通过XML执行此操作。相反,使用:
Button button = (Button) findViewById(R.id.btn_NextLift);
button.setOnLongClickListener(new OnLongClickListener() {
@Override
public boolean onLongClick(View v) {
// TODO Auto-generated method stub
return true;
}
});
确保此代码在调用setContentView()
后出现。
另外,请确保longClickable
属性设置为true。