【发布时间】:2013-05-22 13:31:57
【问题描述】:
这是我的代码,它在按钮被触摸时显示一个弹出窗口,当用户松开手指时将其关闭。
但我需要知道用户刚刚松开手指的天气,或者他是否滑入弹出窗口并从那里松开手指。
在我的代码中,这实际上不起作用,因为我猜如果用户不松开手指,弹出窗口就不会获得焦点。有办法解决吗?
谢谢!
LinearLayout LinLay = new LinearLayout(this);
ImageView ivg = new ImageView(this);
ivg.setImageResource(R.drawable.icon);
LinLay.addView(ivg);
final PopupWindow pw = new PopupWindow(LinLay, 100, 100, true);
final Button bt2 = (Button)findViewById(R.id.button2);
bt2.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN )
{
pw.showAtLocation(bt2, Gravity.CENTER, 0, 0);
}
else if(event.getAction() == MotionEvent.ACTION_UP )
{
pw.dismiss();
}
return true;
}
});
ivg.setOnTouchListener(new OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_UP )
{
showToast(); /// doesn't work! :)
}
return true;
}
});
}
public void showToast()
{
Toast.makeText(this, "AAA!", 500).show();
}
【问题讨论】:
标签: android