简单问题

来源:互联网  责任编辑:小易  时间:2017/1/9 11:18:47
用户提出问题:简单问题,具体如下: java基础

通过互联网整理获得以下解决方法:

=================1楼=====================

报的错误是什么。

=================2楼=====================

引用 1 楼 R_ine 的回复:
报的错误是什么。

变量未定义啊

=================3楼=====================

findViewById(R.id.button2)没找到xml的里面id吧

=================4楼=====================

变量作用域问题
1  Intent 前面加个 final  或者 将 intent 声明为全局变量
final Intent intent = getIntent(); // 1

=================5楼=====================

是不是你还没运行,就报红色了吗。
如果是的话。就这样 final Intent intent = getIntent(); // 1

=================6楼=====================

引用 4 楼 qq_34364155 的回复:
变量作用域问题
1  Intent 前面加个 final  或者 将 intent 声明为全局变量
final Intent intent = getIntent(); // 1

我无java经验,依据c\c++的写法是不会报错的,
我想问就是作用域问题。
可否介绍一下onCreate 内的变量为什么在其内部中变成了无定义?
button2.setOnClickListener这个函数不在其作用域内?

=================7楼=====================

onCreate 方法是重写自 Activity 类,看看有没有继承 Activity
 https://developer.android.google.cn/reference/android/app/Activity.html

=================8楼=====================

推荐安卓官方出的入门指南(有些是中文):
https://developer.android.google.cn/training/index.html

=================9楼=====================

真的理解成 1,2,3行了 

setOnClickListener 在函数作用域内;

测试没有报错,能否将具体错误贴出来。

=================10楼=====================

onCreate只是一个方法,执行完了就退出了,但是在里面赋值  声明点击事件监听不会退出,也可以理解是异步的吧。
我实际也不是很懂

=================11楼=====================

Intent 定义完以后不需要new一个么   同是小白,你听听就好

=================12楼=====================

你定义成全局变量就好了,如果不知道作用域的问题,建议你找一本java书看一看

=================13楼=====================

在onlick里面的话,相当于是一个内部类,要引用父类的变量,需要声明成final,这个机制应该是防止变量被修改,具体要来大神来说说了

=================14楼=====================

//这是用来接受的
Intent?intent?=?getIntent();?//?1

String?data?=?intent.getStringExtra("extra_data");

Log.d("dosecond",?data);

button2.setOnClickListener(new?OnClickListener(){

public?void?onClick(View?v){

// 改这里,发送需要new一块内存
Intent intent =new Intent(); intent.putExtra("data_return",?"hello?firstActivity");?//?2

setResult(RESULT_OK,intent);?//?3

finish();

}

});

=================15楼=====================

引用 9 楼 Li_Jun__ 的回复:
真的理解成 1,2,3行了 

setOnClickListener 在函数作用域内;

测试没有报错,能否将具体错误贴出来。

你没有报错吗?我这里直接就出错了。
学习代码,写的时候随意敲上去的,突然发现出错了,就想问问。

=================16楼=====================

引用 13 楼 omayyouhappy 的回复:
在onlick里面的话,相当于是一个内部类,要引用父类的变量,需要声明成final,这个机制应该是防止变量被修改,具体要来大神来说说了

估计问题太小白了,结贴了

如果您还有更好的解决方法,请在最下面评论中留下您的解决方法


  • 本文相关:
  • 站长必读,如何真正写好一篇原创文章
  • 互联网之路细嗅蔷薇 资深站长分享掘金之道
  • 企业站的站长的工作重心究竟有哪些
  • 浅析:行业门户网站的一些盈利模式
  • 3000IP的企业网站每天订单不到30个的苦恼
  • 网站想内外兼修?先学习提高网站可用性的6大原则
  • 浅谈网页设计中的简约之美
  • 网页改版实战:日本设计师如何彻底优化旅游网站?
  • 网页改版实战!日本设计师如何彻底优化招聘网站?
  • 2015年值得关注的21个网页设计趋势
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2015 www.zgxue.com All Rights Reserved