我编写完一个android程序,在编译时出现ava.lang.NullPointerException错误,是怎么回事?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我编写完一个android程序,在编译时出现ava.lang.NullPointerException错误,是怎么回事?相关的知识,希望对你有一定的参考价值。
完整的信息是:
Errors occurred during the build.
Errors running builder 'android Pre Compiler' on project 'ImageView'.
java.lang.NullPointerException
还有一个错误是:
[2013-05-26 09:53:50 - ImageView] Unknown error: Unable to build: the file dx.jar was not loaded from the SDK folder!
例如下面的代码:
String str = "这是一个测试用的字符串!";
System.out.println(str.length());
这段代码没有问题,但是如果改成下面的代码:
String str ;
System.out.println(str.length());
就会产生NullPointerException异常了追问
我写的程序很简单,没有用到String对象,
追答我只是举例啊,你吧完整的错误提示信息贴出来看看
参考技术B 就是代码中有某个对象仅做了声明,但没有实例化造成的错误 参考技术C 你的imageView没有申明吧无法建立:从SDK文件夹没有被加载的文件dx.jar!本回答被提问者采纳
尝试在 android studio 中安装按钮时出现编译器错误
【中文标题】尝试在 android studio 中安装按钮时出现编译器错误【英文标题】:Compiler Errors when trying to install a button in android studio 【发布时间】:2015-06-08 16:32:13 【问题描述】:我是 android studio 新手,刚刚开始开发我的第一个应用程序, 我之前设法编译了应用程序,但刚刚尝试将代码添加到按钮以更改活动,我环顾四周,无法弄清楚原因,但是当我尝试运行但无法弄清楚时出现 8 个编译错误为什么!
这是我的代码:
<Button
android:layout_
android:layout_
android:text="Login"
android:id="@+id/btnEnter"
android:layout_gravity="center_horizontal"
android:layout_weight="0.40"
android:textSize="50dp"
android:onClick="onClick"/>
android:name=".LoginActivity"
android:label="@string/title_activity_login"
android:windowSoftInputMode="adjustResize|stateHidden" >
</activity>
这是引发编译器错误的代码:
公共类 MainActivity 扩展 ActionBarActivity public final static String EXTRA_MESSAGE = "com.example.ben.learning.MESSAGE";
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
@Override
public boolean onCreateOptionsMenu(Menu menu)
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
@Override
public boolean onOptionsItemSelected(MenuItem item)
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
//noinspection SimplifiableIfStatement
if (id == R.id.action_settings)
return true;
return super.onOptionsItemSelected(item);
按钮 btn = (Button)findViewById(R.id.btnEnter); btn.btnEnter.setOnClickListener(new View.OnClickListener()
public void onClick (View view)
Intent intent = new Intent
(MainActivity.this, LoginActivity.class);
MainActivity.this.startActivity(intent);
);
...以及错误:
错误:(60, 36) 错误:预期 错误:(60, 37) 错误:类型的非法开始 错误:(60, 40) 错误: ')' 预期 错误:(60, 45) 错误:';'预期的 错误:(60, 46) 错误:方法声明无效;需要返回类型 错误:(64, 9) 错误:表达式的非法开始 错误:(64, 16) 错误:表达式的非法开始 错误:(64, 35) 错误:';'预期的 错误:(70, 6) 错误:类型的非法开始
任何见解都会很棒,我只是想弄清楚这一点!
干杯。 :)
【问题讨论】:
你能把这段代码所在的课程贴出来 我已对帖子进行了编辑以包含所有代码。 看起来您是在任何方法之外定义此按钮。 现在解决了,谢谢! 【参考方案1】:我把按钮代码的位置改成onCreate方法解决了错误。
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button) findViewById(R.id.btnEnter);
btn.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View view)
Intent intent = new Intent
(MainActivity.this, LoginActivity.class);
MainActivity.this.startActivity(intent);
);
【讨论】:
以上是关于我编写完一个android程序,在编译时出现ava.lang.NullPointerException错误,是怎么回事?的主要内容,如果未能解决你的问题,请参考以下文章
尝试在 android studio 中安装按钮时出现编译器错误
编译 xamarin-android 应用程序时出现 java.exe 错误
可空接收器类型捆绑的不安全使用? android 应用程序将在编译时出现警告但立即崩溃