这是我的ImageViews
。 @ id / imgUSER 位于 @ id / imgBG 之后。但是当我点击 imgUSER 时它没有响应..但当我删除 imgBG 并测试它,然后再次点击 imgUSER 然后它就可以了。无论如何,如果 imgBG 可见或存在,我可以点击 imgUSER 吗?
<ImageView
android:id="@+id/imgUSER"
android:layout_width="285dp"
android:layout_height="185dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="120dp"
android:background="@android:color/background_dark"
android:src="@android:drawable/ic_menu_gallery" />
<ImageView
android:id="@+id/imgBG"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/linearLayout1"
android:layout_centerHorizontal="true"
android:layout_marginBottom="32dp"
android:src="@drawable/products" />
继承我的listerner代码
imgUSER.setOnClickListener(受听者);
...
public OnClickListener listener = new OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch(v.getId()){
case R.id.imgUSER :
imgUSER.setBackgroundResource(R.id.bgProduct_1);
break;
}
答案 0 :(得分:0)
基本上,你有一个Textview高于另一个。现在,只有上层Textview才会收到触摸事件。如果您想要imgUSER接收它,请更改onTouchReceiver:
imgBG.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
//your code here
return false; //this is the key
}
});
答案 1 :(得分:0)
imgUSER.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
imgUSER.setBackgroundResource(R.id.bgProduct_1);
return false;
}
}
});
使用onTouch事件。触摸图像后图像会发生变化。您可以谷歌“Android onTouch更改图片”以获取更多示例代码。