从另一个类继承时,PhoneStateListener不起作用

时间:2013-04-18 14:53:01

标签: android inheritance phone-state-listener

我试图从类中继承一个函数。它包括注册PhoneStateListener。 以下是我尝试在Main.java中继承的函数。

    public Main(Context context) {
    this.mContext = context;
}

    @Override
protected void onCreate(Bundle savedInstanceState) {
        ...
     registerPhoneStateListener();
     }

public void registerPhoneStateListener() {
 myPhoneStateListener = new MyPhoneStateListener();
 telephonyManager = (TelephonyManager) mContext
            .getSystemService(Context.TELEPHONY_SERVICE);
 telephonyManager.listen(myPhoneStateListener,
            PhoneStateListener.LISTEN_CALL_STATE);
     }

myPhoneStateListener是Main.java中的公共类

    public class MyPhoneStateListener extends PhoneStateListener {...}

这是我另一堂课的编码。

Main main =new Main(this);
main.registerPhoneStateListener();

PhoneStateListener在Main.java中工作正常,但在另一个类中不起作用。 请帮忙,谢谢!

1 个答案:

答案 0 :(得分:0)

在我看来,这是有区别的。如果你运行Activity,那么SO设置正确的东西,使Activity工作正常。 如果你使用new创建Activity,那就不一样了。