2017-06-15 69 views
0

其实,我有2个活动,BaseActivityChildActivityChildActivity正在延伸BaseActivity。我在基类XML中声明TextView,并且我想在ChildActivity中设置TextView的侦听器。我可以直接从ChildActivity调用BaseActivity中定义的功能。但我怎样才能在儿童班设置onClickListenerAndroid在父类xml中声明textview并在子类中设置侦听器

+1

你必须实例TextView的第一,那么你可以调用setOnClickListener。 Childclass也需要textview的引用,所以它应该至少在父类中声明时具有受保护的可见性。 – abbath

+0

在BaseActivity中创建一个公共方法,该方法设置单击侦听器,并在想要在子类中设置单击侦听器时调用该方法。 –

回答

1

对于您可以使用

接口

创建一个接口

interface Textview_InterFace 
{ 
    Textview findTextview(); 

} 

第二步是实现你的BaseActivity也实现方法

而且在儿童活动

public class childActivity extends BaseActivity 
{ 
    Textview_Interface my_textview; 
    Textview textview; 
     @Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    my_textview = (Textview_Interface) this; 

    textview = my_textview.findTextview(); 

    //perform here your onClickListner  


} 
相关问题