工作只是听众

之一,我有RelativeLayout两个听众:onTouch & onClick:工作只是听众

private RelativeLayout userItem; 

userItem = (RelativeLayout) activity.findViewById(R.id.sliding_menu_userItem_rL);

userItem.setOnClickListener(userItemOnClick());

userItem.setOnTouchListener(userItemOnTouch());

/**

* Add user item reaction on click

*/

private View.OnClickListener userItemOnClick() {

Log.d(LOG_TAG, "userItemOnClick");

return new View.OnClickListener() {

@Override

public void onClick(View v) {

FragmentTransaction t = getSupportFragmentManager().beginTransaction();

UserFragment mFrag = new UserFragment();

Log.d(LOG_TAG, "replace");

t.replace(R.id.fragment_container, mFrag);

t.addToBackStack(null);

menu.toggle();

t.commit();

}

};

}

/**

* Add user item reaction on touch

*/

private View.OnTouchListener userItemOnTouch() {

return new View.OnTouchListener() {

@Override

public boolean onTouch(View v, MotionEvent event) {

switch (event.getAction()) {

case MotionEvent.ACTION_DOWN:

userItem.setBackgroundResource(android.R.color.holo_blue_dark);

break;

case MotionEvent.ACTION_UP:

userItem.setBackgroundResource(R.drawable.sliding_menu_user_item_bg);

break;

default:

break;

}

return true;

}

};

}

的问题是,onClickListener只有当这条线commeted反应:在其他情况下,工作

userItem.setOnTouchListener(userItemOnTouch()); 

只有onTouchListener。我不知道为什么。请帮助。

回答:

你不能同时使用两个,所以如果你想继续一个特殊的条件,你可以定义一个布尔变量,然后返回这个布尔值在你的onTouchListener监听器中,所以通过制作true/false你的变量它会切换你的onTouchListener监听器激活/取消激活。

同样的问题:

Android :: OnTouchListener && OnClickListener combination issue

Difference between OnTouchListener and OnClickListener

How to combine OnClickListener and OnTouchListener for an ImageButton

回答:

据OnTouchListener,返回在onTouchtrue意味着听众已经消耗的情况下,这样就不会达到你的OnClickListener。请尝试并返回false

回答:

尝试了这一点得到双方易加工

userItem.setOnTouchListener(new OnTouchListener() { 

public boolean onTouch(View v, MotionEvent event) {

//Your work here

return false;

}

});

userItem.setOnClickListener(new OnClickListener() {

public void onClick(View v) {

//Your work here

}

});

以上是 工作只是听众 的全部内容, 来源链接: utcz.com/qa/262900.html

回到顶部