提前感谢您的努力。
我有一个围绕ListActivity扩展类的应用程序。在应用程序启动之前,我想检查用户是否已注册,如果没有告诉他并从他那里获得一些信息。所以,我试图在OnCreate()方法中调用StartActivity。当它加载时,我得到了一个大黑屏。 我认为它可能与在OnCreate中运行有关,所以我让Activity像往常一样启动,我尝试在OnClick事件中运行它,我得到了相同的结果。 在这两种情况下,如果我按下escape,那个窗口就会消失,主应用程序窗口会回来。
以下是我调用新活动
的行Intent emailIntent = new Intent(this, EmailAddressGetter.class);
this.startActivity(emailIntent);
这是类的代码
/**
*
*/
package com.kosherapp;
import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;
/**
* @author Josh
*
*/
public class EmailAddressGetter extends Activity {
public void OnCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.emailinput);
}
}
这是emailinput xml内容
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:background="#ffffff"
android:textColor="#000000"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:text="hello"
>
</TextView>
而且,这里是清单内容
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.kosherapp"
android:versionCode="1"
android:versionName="1.0"
>
<uses-permission
android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission
android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission
android:name="android.permission.INTERNET" />
<uses-permission
android:name="android.permission.CALL_PHONE" />
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
>
<activity
android:name=".KosherApp"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar"
>
<intent-filter>
<action
android:name="android.intent.action.MAIN" />
<category
android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".EmailAddressGetter"
android:label="email Address Getter"
>
</activity>
<activity
android:name=".GoogleMaps"
android:label="Google Maps"
>
</activity>
<uses-library
android:name="com.google.android.maps" />
</application>
</manifest>
如果您有任何其他信息,请告诉我。哦,我正在运行Google API 2.1更新
由于
答案 0 :(得分:5)
将OnCreate
更改为onCreate
中的EmailAddressGetter
。
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.emailinput);
}
答案 1 :(得分:0)
您需要使用EditText代替。 TextView用于静态文本,这就是为什么没有显示的原因。您还应该将EditText包含在另一个布局中,例如Linear或Relative,这样看起来更干净。
答案 2 :(得分:0)
您使用的意图是调用EmailAddressGetter,但它在清单中没有intent过滤器。在你的onCreate中输入类似Log.e(“EmailAddressGetter”,“它工作”)的内容,并使用ddms查看它是否真正打开了该活动。
此外,在您对Robby Pond的评论中更新的代码中,从EditText中删除xmlns行