我正在尝试为我的应用制作一个按钮,这会将屏幕带到另一个页面。但是,我没有成功。
我尝试了很多东西,没有得到解脱的答案。
我的项目在我的计划中不接受“意图”。 我需要打开一个新布局的按钮称为“OptionButton”
这就是我所拥有的:
MainActivity.java 中的一开始我得到了这个
public class MainActivity extends Activity {
private Button startButton;
private Button pauseButton;
private Button resetButton;
public Button OptionButton;
/** further I got this**/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
/** (I'm just mentioning this because I use savedInstanceState here too)**/
/**MainActivity.java And my code for my button is this **/
OptionButton = (Button) findViewById(R.id.Button1);
OptionButton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
myClick(v); /* my method to call new intent or activity */
}
public void myClick(View v) {
Intent intent = new Intent(this, Background2.class);
startActivity(intent);// for calling the activity
}
});
}
}
}
我在AndroidManifest中添加了这个:
<activity android:name=".Background2"></activity>
这是第二课(src地图中的java文件)
(package & imports, then this:
public class Background2 extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main2);
}
}
_ 我在src map中得到了2个类: -Background2.java -MainActivity.java
另外2个布局xml:
在Activity_main中,我得到了按钮:
<Button
android:id="@+id/Button1"
style="?android:attr/buttonStyleSmall"
android:layout_width="wrap_content"
android:layout_height="35dp"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:text="@string/OptionButtonLabel"/>
仍然无法正常工作。我错过了什么?
太棒了!
我试过改变这个:
button1 = (Button) findViewById(R.id.button1); button1.setOnClickListener(this);
但它不起作用。
答案 0 :(得分:2)
在侦听器内部调用this
(指向侦听器本身),而您想要引用的是MainActivity
。
只需更改为
Intent intent = new Intent(MainActivity.this, Background2.class);
答案 1 :(得分:0)
You Main Activity必须实现OnClickListener
public class MainActivity extends Activity implements OnClickListener{
从Eclipse IDE按Ctrl + Shift + O,它将自动实现并导入必要的功能
答案 2 :(得分:0)
谢谢你的答案! :)
我已经尝试在我的真实设备上安装它。 现在,它打开,但它是打开的第二个xml,当我单击该按钮时,它会重新打开相同的xml。
: - /
我没有收到任何错误消息,但是当我更改你建议的解决方案时(来自你们两个人)