Home » Android » java – setContentView(R.layout.main); error

java – setContentView(R.layout.main); error

Posted by: admin June 15, 2020 Leave a comment

package com.elfapp;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity implements OnClickListener {

    private Button btn_Login;
    private EditText et_UserName;

    public void onCreate(Bundle savedInstanceState) {

        btn_Login = (Button) findViewById(R.id.button_login);

        et_UserName = (EditText) findViewById(R.id.editText_userName);

    public void onClick(View v) {
        if (v.equals(btn_Login)) {
                // skriver ut en toast när man klickar på knappen
            Toast.makeText(MainActivity.this, "Ansluter till server...", Toast.LENGTH_SHORT).show();

                // används i debuggern för att påvisa att programmet exekverat hit
            Log.v("ThisApp", "onClick Successful");

                // TODO skickar det som står i et_UserName till controller (genom TCP/IP), som ska kolla om användaren finns
            // send et_UserName.getText().toString() to controller

                // if(username exists)
            Intent intent = new Intent(this, RoomActivity.class);


I’m getting an error on the line containing setContentView(R.layout.main);
Not sure about what the error/exception is because I’m not used to working in Eclipse..

How to&Answers:

Just take 2 steps and problem would be more likely to get solved:

Step 1:
Clean your project by clicking Project -> Clean.

Step 2:
Rebuild your project by clicking Project -> Build All.

Also make sure that your layout xml files are syntax error free and you don’t have any image which has non-acceptable names (such as a “-” between image name).

Also I request you to have a look at problems window and let me know what errors are being shown there.


This just happend to me a minute ago, but after researching a while, and read this post I notice this.

There is a custom R class with you app name, so when you try to import the missing class (in Eclipse, press Ctrl + Shift + O to import missing classes (Cmd + Shift + O on Mac)), you should see two posible classes the normal:

import android.R;

And a custom class with your project namespace:

import com.yourname.yourapp.R;

If you choose the custom class, problem solved!


Using NetBeans 7.0:

If you fix imports before R.java has been generated for your project (before building it the first time) it will add the line:

import android.R;

which will override the local R.java that you are trying to reference.

Deleting that line resolved the errors for me.


Step 1 :
import android.*;

Step 2 :
clean your project

Step 3 :
Enjoy !!!


if you have multiple packages with different classes then it will be confusing: try this:

import package_name_from_AndroidManifest.R;


is this already solved?

i also had this problem. I solved it just by cleaning the project.

Project>Clean>Clean projects selected below>Check [your project’s name]


This problem usually happen if eclipse accidentally compile the main.xml incorrectly.
The easiest solution is to delete R.java inside gen directory.
Once we delete, than eclipse will generate the new R.java base on the latest main.xml



  1. Right click on your project.

  2. Go to properties.

  3. Select android (second option in the Left panel).

  4. Click “add…” (in library), select your project.

  5. Click ok.

  6. And finally, clean your project.

If this doesn’t work, make sure that “android-support-v7-appcompat” is in your Project Explorer.

If it isn’t there, you can add it by importing a simple project from: C:/android-sdks\extras\android\support\v7\appcompat


use code : setContentView(R.layout.activity_main); instead ofsetContentView(R.layout.main);