Java 无法解析ID或ID不是字段
我是android开发的新手,目前正在开发一个非常基础的应用程序。我希望“按钮1”打开一个新活动。在网上到处看看,我不知道我做错了什么 爪哇: 我在public void onCreate方法中遇到以下错误:Java 无法解析ID或ID不是字段,java,android,eclipse,button,Java,Android,Eclipse,Button,我是android开发的新手,目前正在开发一个非常基础的应用程序。我希望“按钮1”打开一个新活动。在网上到处看看,我不知道我做错了什么 爪哇: 我在public void onCreate方法中遇到以下错误: 令牌“)”上的语法错误,{应在该令牌之后 覆盖android.app.Activity.onCreate 令牌“)”上的语法错误,{应在该令牌之后 findViewById行有以下错误: -ID无法解析或不是字段 XML: 非常感谢您的帮助!谢谢。您的super呼叫超出了方法范围。
- 令牌“)”上的语法错误,{应在该令牌之后
- 覆盖android.app.Activity.onCreate
- 令牌“)”上的语法错误,{应在该令牌之后
非常感谢您的帮助!谢谢。您的
super
呼叫超出了方法范围。此:
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
{
...
}
应该是:
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
...
}
一般来说,如果您开始看到很多错误,那么值得查看包含错误的第一行-这可能是原因。此外,请经常保存和编译,这样您就可以知道哪里出了错误并快速修复它
还要注意的是,在方法或类声明之后不需要分号——我会根据风格删除它们
理想情况下,也可以使用@Override
,让编译器检查您是否真的重写了一个方法:
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
...
}
将您的功能更改为:
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fullscreen);
button1 = (Button) findViewById (R.id.button1);
}
此外,要更改活动,请进行以下两项更改:
XML
<Button
android:layout_width="250sp"
android:layout_height="100sp"
android:layout_gravity="center"
android:text="New"
android:textSize="20sp"
android:typeface="monospace"
android:id="@+id/button1"
android:onClick="activityChange">
</Button>
请参阅这些参考资料以获取解释。此developer.android.com/training网站将帮助您以正确的方式学习基础知识
啊,很好,整理好了。谢谢您的快速回复。
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_fullscreen);
button1 = (Button) findViewById (R.id.button1);
}
<Button
android:layout_width="250sp"
android:layout_height="100sp"
android:layout_gravity="center"
android:text="New"
android:textSize="20sp"
android:typeface="monospace"
android:id="@+id/button1"
android:onClick="activityChange">
</Button>
public void activityChange(View view) {
//Change Activities using an Intent
Intent intent = new Intent(this, YOUR_CLASS_NAME.class);
startActivity(intent);
}