starwar2012 2013-08-23 03:36 采纳率: 0%
浏览 2020
已采纳

在内部方法关联一个接口

有一个类执行另一个类中创建的接口,代码如下:

public class MainActivity extends Activity  implements AsyncClassSocket.Listener{   
AsyncClassSocket thesocketclass = new AsyncClassSocket();
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);    
    thesocketclass.registerListener(this);
    //More codes
    }
}    
@Override
public void onReplyFromServer(boolean state) {
    //Codes
}

上面的代码没有问题,但是如果我将代码放到一个内部方法中:

showProgressDialog.setOnClickListener(new View.OnClickListener() {          
        @Override
        public void onClick(View v) {
            thesocketclass = new AsyncClassSocket();
            thesocketclass.registerListener(this); <---- Problem
            showProgressDialog();   
            thesocketclass.execute();               
        }
    });     
} 

就不能再关联到接口,而是关联到View.OnClickListener()

  • 写回答

2条回答 默认 最新

  • 寒江独 2013-08-23 08:36
    关注
    thesocketclass.registerListener(MainActivity.this); <---- Problem
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料