无法访问新活动中的资源

时间:2013-11-20 03:02:43

标签: android android-intent android-activity resources

我已经阅读了类似的问题和答案,但我很难理解因为我是Android开发的新手。

这句话给了我一个ANR:

EditText text = (EditText) findViewById(R.id.name_field);

我将此声明称为不是来自主要活动,而是来自我创建的第二个活动。对我来说,它尖叫着范围问题。有人可以为我提供一些智慧吗?我没有任何特别的意图(或其他任何事情)。

GameOverActivity.java:

public class GameOverActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_game_over);

        // Show the Up button in the action bar.
        setupActionBar();
    }

    /**
     * Set up the {@link android.app.ActionBar}, if the API is available.
     */
    @TargetApi(Build.VERSION_CODES.HONEYCOMB)
    private void setupActionBar() 
    {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) 
        {
            getActionBar().setDisplayHomeAsUpEnabled(true);
        }
    }

    public void yesResponse(View pView)
    {

        EditText text = (EditText) findViewById(R.id.name_field);
        //Button addButton = (Button) findViewById(R.id.add_button);

        //text.setVisibility(0);
        //addButton.setVisibility(0);
    }
}

MainActivity.java的调用方法:

public void checkTheBox()
{
    CheckBox tempBox;

    switch(boxNumberChecked)
    {
        case 0: 
        {
            tempBox = (CheckBox) findViewById(R.id.checkBox1);
            tempBox.setChecked(true);
            break;
        }
        case 1:
        {
            tempBox = (CheckBox) findViewById(R.id.checkBox2);
            tempBox.setChecked(true);
            break;
        }
        case 2: // intentionally falls through          
        default:
        {
            tempBox = (CheckBox) findViewById(R.id.checkBox3);
            tempBox.setChecked(true);

            **Intent intent = new Intent(this, GameOverActivity.class);
            startActivity(intent);**
            break;
        }
    }
    boxNumberChecked++;
}

0 个答案:

没有答案