zoukankan      html  css  js  c++  java
  • [android]R.class里有ID,onCreate方法里调用findViewById返回空

    在做android练习,一个新手错误,记录一下:

    在练习android权威编程指南时,第5章 第二个Activity部分练习,出现标题问题,代码还原如下:

    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            mQuestionTitle = (TextView)findViewById(R.id.question_title);
            mQuestionAnswer = (TextView)findViewById(R.id.answer_text_view);
            mShowAnswer = (Button)findViewById(R.id.show_answer_button);
            setContentView(R.layout.activity_cheat);
            String mAnswerIsTrue = getIntent().getStringExtra(EXTRA_ANSWER);
            if(mAnswerIsTrue != null && mAnswerIsTrue.equals("")==false){
                mCheatQuestion = GSON.fromJson(mAnswerIsTrue,Question.class);
                mQuestionAnswer.setText(mCheatQuestion.getTextResId());
            }else{
                mQuestionTitle.setText(R.string.cheat_activity_error);
                mQuestionAnswer.setText(R.string.cheat_activity_error);
            }

    错误原因是没有设置ContentView就获取对象了,要把findViewById置于setContentView函数下面:

    setContentView(R.layout.activity_cheat);
    
    mQuestionTitle = (TextView)findViewById(R.id.question_title);
            mQuestionAnswer = (TextView)findViewById(R.id.answer_text_view);
            mShowAnswer = (Button)findViewById(R.id.show_answer_button);
            

     

  • 相关阅读:
    Linux中搭建Maven私服
    NIO类库
    JAVA网络通信IO-NIO-AIO-Netty
    栈和队列
    JAVA四类八种基本数据类型
    JAVA基础—线程池
    vue 数组push元素 视图没更新
    小程序♥云开发
    vue2.0 transition 手风琴
    element-ui 表格翻页多选后仍然记忆所选项,数据回显
  • 原文地址:https://www.cnblogs.com/aocshallo1/p/12256343.html
Copyright © 2011-2022 走看看