java - 无法在 Activity 之间切换

标签 java android android-activity android-intent

抱歉问了一些愚蠢的问题,java 和 Android 对我来说都是新的;)

我的问题:我无法在一个非常简单的应用程序中在两个 Activity 之间切换。我尝试了类似主题中描述的解决方案,但没有成功。

这是我的第一个 Activity (我没有粘贴导入):

public class OneActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
}

public void OnStart(){
    Button Btn = (Button)findViewById(R.id.btnNext);     
    Btn.setOnClickListener(new OnClickListener() {

        public void onClick(View Button) {

    Intent myIntent = new Intent(OneActivity.this, UserInput.class); 
    OneActivity.this.startActivity(myIntent);

        } 

});
}

}

第二个 Activity 非常简单 - 它只是应该加载一个名为 userinput.xml 的布局:

public class UserInput extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.userinput);

}

}

list 的应用程序部分如下所示:

 <application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >

    <activity
        android:name=".OneActivity"
        android:label="@string/app_name" >

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>


        <activity 
            android:name=".UserInput" 
            android:label="@string/app_name" />


    </activity>
</application>

当我运行应用程序并单击按钮时没有任何反应。问题可能出在哪里?

//好吧,我已将代码放入 onCreate() 方法中,因此现在如下所示:

public class OneActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button Btn = (Button)findViewById(R.id.btnNext);     
    Btn.setOnClickListener(new OnClickListener() {

        public void onClick(View Button) {

    Intent myIntent = new Intent(OneActivity.this, UserInput.class); 
    OneActivity.this.startActivity(myIntent);

        } 

});
}

}

现在,只要我单击“下一步”按钮,应用程序就会崩溃(强制关闭)。

最佳答案

使用大写“O”定义 onStart() 函数。这就是为什么该函数永远不会被调用的原因。

你的onStart():

public void OnStart(){ ... }

应该如何:

// Note the lowercase 'o' in onStart
public void onStart(){ ... }

另请注意,当您想要重写方法时,在函数名称上方添加 @Override 将有助于防止犯这些错误,因为 Eclipse(或您使用的任何 IDE)会告诉您实际上并未重写函数。

关于java - 无法在 Activity 之间切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9211277/

相关文章:

javascript - 获取唯一移动网络客户的数量

java - 无法编写基于每个项目保存的长期过滤掉 RecyclerView 中的项目的算法

java - 应用程序在启动时崩溃 - “System services not available to Activities before onCreate()”

使用 mysql 的 Android 登录应用程序

java - 如果未在字符串的 @Column 注释上指定长度属性,会发生什么情况

java - PermGen和Heap,区别及其意义

java - 在Java中使用FFMPEG(在Mac上开发)

java - 我可以从 keystore 恢复密码吗

android - 如何使用 flutter 本地化启动器中显示的应用程序名称?

android - 在后台运行 Activity