我的问题是我想尝试在屏幕上的任何地方接收 ANY TOUCH。为此,我想创建一个带有主要“RelativeLayout”的布局。该活动实现“onTouchListener”。这是我的布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/relative"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/ic_launcher" /></RelativeLayout>
这是我的活动代码:
public class MainActivity extends Activity implements OnTouchListener{
private Context context = null;
private ImageView imagen = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
context = this;
setContentView(R.layout.activity_main);
imagen = (ImageView)findViewById(R.id.imageView1);
imagen.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
}
});
RelativeLayout relative = (RelativeLayout)findViewById(R.id.relative);
relative.setOnTouchListener(this);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
Toast.makeText(context, "Touch!!", Toast.LENGTH_SHORT).show();
return false;
}
关键是,如果我触摸图像,它不会显示吐司(如果您触摸屏幕上的任何位置,我想显示吐司)。
任何人都知道如何在我的活动上接收触摸屏幕的事件(无论它在哪里??)。
编辑:我想要的也不是 ImageView 的侦听器,我想知道是否有办法接收用户触摸屏幕的事件,无论它在那里。
非常感谢!