我正在尝试编写一个应用程序,当这里选择一个按钮时打开另一个窗口是我目前所拥有的:
public class AndroidAlarm extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button codesBtn = (Button)findViewById(R.id.imagebutton1);
codesBtn.setOnClickListener(new View.OnClickListener() {
public void onClick(View argo) {
Intent i = new Intent(AndroidAlarm.this, Codes.class);
startActivity(i);
}
});
}
}
这是我在默认类中的内容,我正在尝试启动的活动是一个名为Codes的类:
public class Codes extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.codes);
}
}
它将具有功能,但现在我只是想打开它。 Codes.java(上面)连接到一个名为codes.xml的布局。
我的清单文件如下:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.affirma.androidalarm"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity class =".AndroidAlarm" android:name = ".AndroidAlarm"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity class = ".Codes" android:name = ".Codes" android:label="Codes">
</activity>
</application>
</manifest>
当我运行该程序时,它将开始然后崩溃,说它突然结束。当我调试时,它在AndroidAlarm.java中的这一行中断:
codesBtn.setOnClickListener(new View.OnClickListener() {
它说未找到来源。关于“activitythread.preformlauncher ...”的事情无论如何我不知道为什么会发生这样的建议?
答案 0 :(得分:0)
错误是因为它试图从R.layout.main中的R.java文件中找到“imagebutton1”的id。所以请确保你已经正确初始化了imagebutton1,并且R.java包含了相同的id。
答案 1 :(得分:0)
你确定你的imagebutton1在R.layout.main中吗?我尝试了你的代码,它工作正常