2012-03-31 86 views
1

我正在学习安卓系统,此应用是我的第一个应用,但无法在模拟器或我自己的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> 

这些都是在日志猫错误:

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 in loader dalvik.system.PathClassLoader [/data/app/com.newboston.aida.android2-2.apk] 03-31 23:39:28.580:E/AndroidRuntime(12259):在 android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1573) 03-31 23:39:28.580:E/AndroidRuntime(12259):在 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 a ndroid.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):在 com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:907) 03-31 23:39:28.580:E/AndroidRuntime 12259):在 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 in loader 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更多

+1

您引用的“日志错误”不是您的错误。您会在LogCat中发现Java堆栈跟踪,这是您的错误。 “代码也没有问题,因为我从教程中得到了这些。” - 它会显示“有问题”,因为您收到错误。 – CommonsWare 2012-03-31 20:42:56

+0

在LOgCat中有很多错误,例如E/AndroidRuntime(280):\t at java.lang.ClassLoader.loadClass(ClassLoader.java:573) – matarsak 2012-03-31 21:13:45

+0

检查您是否在Manifest文件中注册了您的活动。 – 2012-03-31 21:16:31

回答

2

我认为你的活动ity名称需要与您的清单中找到的内容相匹配。

您的活动名称为“TutorialOne”,但在您的清单中活动名称为“.Android2Activity”。

我认为这就是为什么LogCat说无法实例化活动。

如果您是Android新手,我建议您开始一个新项目,因为这将为您处理这些细节。

+0

谢谢,它正在运行! – matarsak 2012-04-01 08:01:16

1

您的活动名称为“TutorialOne”,但在您的清单中活动名称为“.Android2Activity”。所以只需在您的展示文件中将“.Android2Activity”替换为“TutorialOne”。 另外它会更好,如果你可以粘贴你的XML文件。