提问人:CastroNcube 提问时间:8/24/2021 更新时间:8/24/2021 访问量:1135
尝试在 null 对象上调用虚拟方法时出现空指针异常 引用 android studio
Null pointer exception trying to invoke virtual method on a null object reference android studio
问:
我正在尝试在我的 android 程序中隐藏一个按钮。我的XML布局文件中有一个ID为“btn_add”的按钮。现在,我希望它在打开活动时不可见。当我检查logcat中的错误时,我在将可见性设置为“View.INVISIBLE”的行上收到错误“尝试在空对象引用上调用虚拟方法时出错”。
当我为名为“like”且 id 为“btn_like”的图像视图创建一个 onlcick 侦听器时,我也会遇到同样的错误。以下 java 代码负责此。
您的即时帮助将不胜感激。
Button btn_add;
ImageView like;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
btn_add=findViewById(R.id.add_product);
btn_add.setVisibility(View.INVISIBLE);
like = findViewById(R.id.like);
like.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(BusinessActivity.this,"liked",Toast.LENGTH_SHORT).show();
}
});
}}
答:
1赞
Yasiru Nayanajith
8/24/2021
#1
super.oncreate() 下面的代码中缺少此行。未设置 contentView。在访问 UI 元素之前设置 contentview。
setContentView(R.layout.your_activity_xml_layout);
最后
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.your_activity_xml_layout);
btn_add=findViewById(R.id.add_product);
btn_add.setVisibility(View.INVISIBLE);
like = findViewById(R.id.like);
like.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(BusinessActivity.this,"liked",Toast.LENGTH_SHORT).show();
}
});
}}
评论
0赞
CastroNcube
8/24/2021
非常感谢,我没有意识到这一点。你很棒,我的男人
评论