2017-03-07 167 views
0

我的导航抽屉有一个基本活动。当活动实现onclick监听器时,BaseActivity onclick监听不工作

这款导航抽屉具有的onclick听众:

public class BaseActivity extends AppCompatActivity implements View.OnClickListener{ 

...

@Override 
public void onClick(View v) { 
    switch(v.getId()) { 
     case R.id.Pic: 
      Intent intent = new Intent(this, P_Activity.class); 
      this.startActivity(intent); 
      break; 
    } 
} 

它的工作原理很好,当它扩展BaseActivity类有没有点击收听了。 但如果是这样的:

public class Upload extends BaseActivity implements View.OnClickListener { 

上baseactivity点击将无法正常工作。 任何想法为什么以及如何解决?

+0

mPic.setOnClickListener(本);在BaseActivity中调用这一行? –

+0

是的,'image.setClickable(true); image.setOnClickListener(this);' –

回答

1

您正在重写类Upload中的方法public void onClick(View v)。在方法Upload.onClick(View v)呼叫super

public class Upload extends BaseActivity implements View.OnClickListener { 
    @Override 
    public void onClick(View v) { 
     if (something) { 
     // do something 
     } else { 
      super.onClick(v); 
     } 
    } 
} 
+0

非常感谢!我现在就试试吧! –

+0

我在'switch(v.getId()){cases} super'之后添加'super'并且它可以工作。它也可以吗? –

+0

这取决于你,如果它的工作方式如你所料,那没关系。 – betorcs