我以前做过这件事,幸运的是,所以我无法理解为什么我现在搞砸了。
很简单,从主要活动开始第二个活动。
在我的主要活动(Test.class)中:
Intent s = new Intent(Test.this, Settings.class);
this.startActivity(s);
我的设置活动(Settings.class):
public class Settings extends Activity {
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.settings);
}
}
的settings.xml:
<?xml version="1.0" encoding="UTF-8"?>
<LinearLayout
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:orientation="horizontal"
xmlns:android="http://schemas.android.com/apk/res/android">
<TextView
android:id="@+id/test"
android:text="Test"
/>
</LinearLayout>
这是AndroidManifest.xml文件的应用程序部分:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:name="com.frank.test.Test"
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
android:name="com.frank.test.Settings"
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>
这只是崩溃了。没有日志条目,没有任何内容。即使我使用带有调试标记的try-catch来创建和启动intent / activity也不行。
我知道,我是瞎子,或是聋子。但我真的很讨厌这些在任何地方都没有错误的崩溃。
顺便说一下,我在主Acitvity的onCreate()方法中开始了这个意图。
更新:我还尝试将第二个活动添加到AndroidManifest.xml类,如下所示:
<activity android:name=".Settings"></activity>
答案 0 :(得分:2)
你需要修理的东西很少。
首先,您的布局:
您需要为TextView
定义宽度和高度,如下所示:
<TextView
android:id="@+id/test"
android:text="Test"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
第二次,您需要修复AndroidManifest.xml
。您没有正确定义两个活动。见下文:
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<!-- Test activity -->
<activity
android:name="com.frank.test.Test"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Settings activity -->
<activity
android:name="com.frank.test.Settings"
android:label="@string/app_name" >
</activity>
</application>
答案 1 :(得分:0)
更改您的清单如下:
<activity
android:name=".Settings"/>
答案 2 :(得分:0)
您应该在清单文件中指定您的设置活动,不指定 category.LAUNCHER 。 它应该是这样的:
<activity android:name=".Settings"/>
关于“无日志条目” - 您似乎正在查看应用的日志(通过应用TAG过滤)。您可以禁用任何日志过滤,并且应该在logcat中看到此崩溃的错误消息和堆栈跟踪。
答案 3 :(得分:0)
AndroidManifest.xml中的两个启动器活动? ,2同班的名字?这里错了
<activity
android:name="com.frank.test.Test"
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
android:name="com.frank.test.Test"
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
android:name="com.frank.test.Test"
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 android:name=".com.frank.test.Settings"></activity>