[Java&Android Studio]如何将数据在匿名类(onClick方法)的内外传递(解决Variable...within inner class,needs declared final)

注:本篇文章为笔者的学习笔记,其中有概念错误在所难免,欢迎指正。笔者的文章的内容是自己通过实践、思考得出的,而是不是道听途说来的,所以文章会含有大量来自于笔者思考的赘述,急于寻求解决方案的读者可以只看高亮的部分。笔者提供的问题解决方案在当前版本的编程环境下一般是有效的。

为了方便,笔者以Android Studio作为示例,实际上在这方面AS和Java是一样的(AS可以用Java语言编写)

Button button=new Button(this);//以MainActivity作为button的Context(上下文)
//Java代码用Button button=new Button("");即可

button.setOnClickListener(new OnClickListener() {
      @Override
      public void onClick(View v) {
             //写被点击后执行的操作
      }
});

上面的代码就是是创建按钮和并创建button对象的按键监听事件(使用匿名内部类的方法)的基本方法。

 

有时候我们需要在匿名内部类的外面(button.setOnClickListener的上方)声明一个变量(作为全局变量),然后在onClick方法中引用该变量,如下图所示。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值