我刚刚开始研究android所以即时提出这么简单的问题。我试图导航(从一个视图移动到另一个视图)。此代码显示没有错误,并显示第一个视图中的按钮。但是,当我点击按钮时没有任何反应,应用程序崩溃。任何人都可以帮我解决我的代码中出错的地方。
pushActivity.java
package com.myapp.pus;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.Button;
import android.view.View;
public class PushActivity extends Activity {
Button mybtn;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mybtn = (Button)findViewById(R.id.mybtn);
mybtn.setOnClickListener(new View.OnClickListener(){
public void onClick(View view) {
Intent nextScreen = new Intent(getApplicationContext(), SecondScreen.class);
// startActivity(new Intent(action));
startActivity(nextScreen);
}
});
}
}
main.xml中
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<Button
android:id="@+id/mybtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
/>
</LinearLayout>
第二个屏幕
package com.myapp.pus;
import android.app.Activity;
import android.os.Bundle;
public class SecondScreen extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.screen2);
// Binding Click event to Button
}
}
Screen2.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
</LinearLayout>
提前致谢。希望得到你的帮助。
答案 0 :(得分:2)
您需要为AndroidManifest.xml
定义SecondScreen活动,如下所示
<activity android:name=".SecondScreen"></activity>
。
答案 1 :(得分:2)
在Activity
AndroidManifest.xml
答案 2 :(得分:1)
将getApplicationContext()
替换为PushActivity.this
此外,您应该检查logcat日志中的确切错误和堆栈跟踪,以确切了解引发异常的代码行或问题所在。
答案 3 :(得分:1)
您在清单文件中的声明不正确.....
<activity android:name=".SecondScreen">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</activity>
将其更改为
<activity android:name=".SecondScreen"> <activity>
看问题是你已宣布活动为主要活动......
!11 ! 删除2行
答案 4 :(得分:0)
您需要为View.OnClickListener
类实现PushActivity
。 e.g。
public class Now extends Activity implements View.OnClickListener
答案 5 :(得分:0)
在AndroidManifest.xml
文件中,在应用程序标记内,您应该定义要在第一个活动按钮上显示的第二个活动。
例如:
<application
<activity
android:name=".SecondActivity">
</activity>
</application>