2013-11-21 49 views
1

我知道,它的打头的问题,但我无法理解什么是变量someEventListener分配?.. 我们如何能够比较活动与接口onSomeEventListener)?使用接口和方法onAttach(片段)

public interface onSomeEventListener { 
    public void someEvent(String s); 
    } 

    onSomeEventListener someEventListener; 

    @Override 
    public void onAttach(Activity activity) { 
    super.onAttach(activity); 
     try { 
      someEventListener = (onSomeEventListener) activity; 
     } catch (ClassCastException e) { 
      throw new ClassCastException(activity.toString() + " must implement onSomeEventListener"); 
     } 
    } 

回答

2

如果一个对象实现的监听器,它可以转换为与侦听器类型的另一个对象。在这种情况下,我们将该活动投射给听众。

public class MyObject implements MyListener { 

} 

MyObject obj = new MyOBject(); 
MyListener listener = (MyListener)obj; // This is valid