我正在学习android,这个应用程序是我的第一个应用程序之一但我无法运行它,无论是在模拟器上还是在我自己的Galaxy 2上!它说该应用程序意外停止。 日志上的错误是“运行时没有命令输出:'我开始
我使用平台2.2,我在MAC上运行代码
注意我已经搜索了很多并且在没有任何帮助的情况下测试了许多解决方案。比如清除项目,从AVD启动模拟器,点击擦除用户数据,创建新项目并将其复制到该项目上。
任何想法?
public class TutorialOne extends Activity implements OnCheckedChangeListener{
TextView textOut;
EditText textIn;
RadioGroup gravityG, styleG;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
textOut = (TextView) findViewById(R.id.tvChange);
textIn = (EditText) findViewById(R.id.EditText1);
gravityG = (RadioGroup) findViewById(R.id.rgGravity);
gravityG.setOnCheckedChangeListener(this);
styleG = (RadioGroup) findViewById(R.id.rgStyle);
styleG.setOnCheckedChangeListener(this);
Button gen = (Button) findViewById(R.id.bGenerate);
gen.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
textOut.setText(textIn.getText());
}
});
}
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
// TODO Auto-generated method stub
switch (checkedId){
case R.id.rbLeft:
textOut.setGravity(Gravity.LEFT);
break;
case R.id.rbCenter:
textOut.setGravity(Gravity.CENTER);
break;
case R.id.rbRight:
textOut.setGravity(Gravity.RIGHT);
break;
case R.id.rbNormal:
textOut.setTypeface(Typeface.defaultFromStyle(Typeface.NORMAL),Typeface.NORMAL);
break;
case R.id.rbItalic:
textOut.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC),Typeface.ITALIC);
break;
case R.id.rbBold:
textOut.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD),Typeface.BOLD);
break;
}
}
}
这是我的清单,我没有看到任何错误:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name=".Android2Activity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
这些是log cat中的错误:
03-31 23:39:28.580:E / AndroidRuntime(12259):致命异常:主要 03-31 23:39:28.580:E / AndroidRuntime(12259): java.lang.RuntimeException:无法实例化活动 ComponentInfo {com.newboston.aida.android2 / com.newboston.aida.android2.Android2Activity}: 抛出java.lang.ClassNotFoundException: 加载程序中的com.newboston.aida.android2.Android2Activity dalvik.system.PathClassLoader [/data/app/com.newboston.aida.android2-2.apk] 03-31 23:39:28.580:E / AndroidRuntime(12259):at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1573) 03-31 23:39:28.580:E / AndroidRuntime(12259):at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1667) 03-31 23:39:28.580:E / AndroidRuntime(12259):at android.app.ActivityThread.access $ 1500(ActivityThread.java:117)03-31 23:39:28.580:E / AndroidRuntime(12259):at android.app.ActivityThread $ H.handleMessage(ActivityThread.java:935) 03-31 23:39:28.580:E / AndroidRuntime(12259):at android.os.Handler.dispatchMessage(Handler.java:99)03-31 23:39:28.580:E / AndroidRuntime(12259):at android.os.Looper.loop(Looper.java:130)03-31 23:39:28.580: E / AndroidRuntime(12259):at android.app.ActivityThread.main(ActivityThread.java:3691)03-31 23:39:28.580:E / AndroidRuntime(12259):at java.lang.reflect.Method.invokeNative(Native Method)03-31 23:39:28.580:E / AndroidRuntime(12259):at java.lang.reflect.Method.invoke(Method.java:507)03-31 23:39:28.580: E / AndroidRuntime(12259):at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:907) 03-31 23:39:28.580:E / AndroidRuntime(12259):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:665)03-31 23:39:28.580:E / AndroidRuntime(12259):at dalvik.system.NativeStart.main(Native Method)03-31 23:39:28.580: E / AndroidRuntime(12259):引起:java.lang.ClassNotFoundException: 加载程序中的com.newboston.aida.android2.Android2Activity dalvik.system.PathClassLoader [/data/app/com.newboston.aida.android2-2.apk] 03-31 23:39:28.580:E / AndroidRuntime(12259):at dalvik.system.PathClassLoader.findClass(PathClassLoader.java:240) 03-31 23:39:28.580:E / AndroidRuntime(12259):at java.lang.ClassLoader.loadClass(ClassLoader.java:551)03-31 23:39:28.580:E / AndroidRuntime(12259):at java.lang.ClassLoader.loadClass(ClassLoader.java:511)03-31 23:39:28.580:E / AndroidRuntime(12259):at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 03-31 23:39:28.580:E / AndroidRuntime(12259):at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1565) 03-31 23:39:28.580:E / AndroidRuntime(12259):... 11 more
答案 0 :(得分:2)
我认为您的活动名称需要与清单中的内容相匹配。
您的活动名称是“TutorialOne”,但在您的清单中,活动名称为“.Android2Activity”。
我认为这就是LogCat说无法实例化活动的原因。
如果您是Android新手我建议开始一个新项目,因为这将为您处理这些细节。
答案 1 :(得分:1)
您的活动名称是“TutorialOne”,但在您的清单中,活动名称为“.Android2Activity”。所以只需在展示文件中将“.Android2Activity”替换为“TutorialOne”即可。 如果你可以粘贴你的xml文件也会更好。