首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >向主视图外的按钮添加onclicklistener时出现空指针异常

向主视图外的按钮添加onclicklistener时出现空指针异常
EN

Stack Overflow用户
提问于 2015-02-12 23:34:27
回答 2查看 109关注 0票数 0

我想要访问视图中的对象,而不是应用程序中的主要内容视图。我该怎么做呢?

我试图添加一个onclicklistener,但每次都失败,因为程序似乎找不到按钮。

代码语言:javascript
复制
02-12 15:26:29.034: E/AndroidRuntime(11788): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.evolutionsystems.kiroco/com.evolutionsystems.kiroco.OverviewActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference

还是说我走错了路?我是否应该在主视图中包含所有按钮并将其设置为隐藏,然后在用户与程序交互时动态更改它们?

编辑-这是抛出错误的代码类型。

代码语言:javascript
复制
final Button receiver = (Button) findViewById(R.id.receiver);   
         receiver.setOnClickListener(new View.OnClickListener() {
             public void onClick(View v) {
                 aboutKirocoClicked(v);
             }
         }); 

receiver按钮是与内容视图不同的视图的一部分,因此程序找不到它并返回null。

EN

回答 2

Stack Overflow用户

发布于 2015-02-13 00:27:35

当您调用findViewById( int )时,您请求的是所调用对象的上下文中的视图。

因此,如果这是一个活动,那么该对象必须是来自setContent的xml资源的一部分。

您也可以从其他放大的布局(菜单、碎片)中查找资源,但您必须调用该对象上的findViewById才能找到视图。

不是为了让你的生活变得复杂,但是一旦你对Android更熟悉了,你可能会想看看像Roboguice或Dagger这样的依赖注入框架。

票数 0
EN

Stack Overflow用户

发布于 2015-02-13 00:37:50

在您希望按钮出现的活动中,添加以下代码:

代码语言:javascript
复制
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //In activity_main.xml, you have a button.
    setContentView(R.layout.activity_main);
    //You get this button with the referencing ID
    Button myBtn = (Button) findViewById(R.id.my_btn_id);
    //Now, you can set your onClickListner
    myBtn.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            //Handle your button click
        }
    });
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28481476

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档