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) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
btn_Login = (Button) findViewById(R.id.button_login);
btn_Login.setOnClickListener(this);
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);
this.startActivity(intent);
}
}
}
我在包含setContentView(R.layout.main);
的行上收到错误
不确定错误/异常是什么,因为我不习惯在Eclipse中工作..
答案 0 :(得分:15)
这只是在一分钟前发生在我身上,但经过一段时间的研究,看了这篇文章,我注意到了这一点。
有一个带有你app名称的自定义R类,所以当你尝试导入缺少的类时(在Eclipse中,按Ctrl + Shift + O导入缺少的类(Mac上的Cmd + Shift + O)),你应该看两个正常的正常类:
import android.R;
带有项目命名空间的自定义类:
import com.yourname.yourapp.R;
如果您选择自定义类,问题就解决了!
答案 1 :(得分:13)
只需采取两个步骤,问题就更有可能得到解决:
第1步: 单击项目 - >清理项目;干净。
第2步: 单击Project - >重建项目。全部构建。
还要确保您的布局xml文件没有语法错误,并且您没有任何具有不可接受名称的图像(例如图像名称之间的“ - ”)。
另外,我请求您查看问题窗口,让我知道那里显示的错误。
答案 2 :(得分:4)
使用NetBeans 7.0:
如果在为项目生成R.java之前修复导入(在第一次构建它之前),它将添加以下行:
import android.R;
将覆盖您尝试引用的本地R.java。
删除该行可以解决我的错误。
答案 3 :(得分:3)
第1步: import android。*;
第2步: 清理你的项目
第3步: 享受!!!
答案 4 :(得分:1)
如果您有多个包含不同类的包,那么会让人感到困惑:试试这个:
import package_name_from_AndroidManifest.R;
答案 5 :(得分:0)
这已经解决了吗?
我也有这个问题。我只是通过清理项目来解决它。
项目>清洁>清除下面选择的项目>检查[您的项目名称]
答案 6 :(得分:0)
如果eclipse意外地错误地编译了main.xml,通常会发生此问题。 最简单的解决方案是删除gen目录中的R.java。 一旦我们删除,eclipse将在最新的main.xml上生成新的R.java基础
答案 7 :(得分:0)
简单地:
右键点击您的项目。
转到属性。
选择android(左侧面板中的第二个选项)。
点击“添加...”(在库中),选择您的项目。
点击确定。
最后,清理你的项目。
如果这不起作用,请确保项目浏览器中有“android-support-v7-appcompat
”。
如果不存在,您可以通过从C:/android-sdks\extras\android\support\v7\appcompat
答案 8 :(得分:0)
使用代码:setContentView(R.layout.activity_main);而不是tosetContentView(R.layout.main);