我已经看过每个活动之间切换的例子,我总是得到相同的结果。应用程序炸弹。
据我所知,如果你有一个填充布局内容的java类,那么为了切换到另一个布局,你必须'链接'到java文件,而java文件又会打开setContentView(R .layout.whatever);
当我尝试这样做时,就像我说我的应用程序炸弹了。我的代码如下: -
FROM Java类: -
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.activity_main);
Button next = (Button) findViewById(R.id.goesnews);
next.setOnClickListener(new View.OnClickListener() {
public void onClick(View view) {
Intent myIntent = new Intent(view.getContext(), ac2.class);
startActivityForResult(myIntent, 0);
}
});
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);
}
TO java file(ac2)
public class ac2 extends Activity {
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main2);
}}
有人可以帮忙吗?
答案 0 :(得分:0)
尝试从此行中删除零:
startActivityForResult(myIntent, 0);
像这样并将其改为:
startActivity(myIntent);
并更改此行:
Intent myIntent = new Intent(view.getContext(), ac2.class);
对此:
Intent myIntent = new Intent(firstActivityName.this, ac2.class);
因为你来到这里按钮的上下文而不是活动。
答案 1 :(得分:0)
试试这种方式
将onclick功能添加到xml文件中的按钮 像这样
<Button
android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"
android:onClick="move" />
并在你的java文件中 使函数像这样移动
public void move(View v)
{
Intent myIntent = new Intent(yourclass.this, ac2.class);
startActivityForResult(myIntent,0);
}
答案 2 :(得分:0)
解决方案很简单,基于VSK的响应(谢谢)稍作调整。
需要ImageButton: -
<Button
android:id="@+id/previous"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="click"
android:onClick="move" />
需要Java: -
public void move(View v)
{
Intent myIntent = new Intent(yourclass.this, ac2.class);
startActivityForResult(myIntent, 0);
}
VSK - 请注意startActivityForResult的“0”属性
全部谢谢