インテントを使用して、あるアクティビティから別のアクティビティに切り替えるのに苦労しています。私のアプリはほぼ完成しています。いくつかのアクティビティがあり、それらを意図的に切り替えることができます。プロジェクトにもう 1 つのアクティビティを追加しました (Eclipse では、File ... New ... AndroidActivity)。私が慣れているように、それは .java と .xml ファイルを作成しました。私の主なアクティビティでは、ボタン (xml) を定義し、java クラス メソッドで buttonClick で実行するようにしました。すべて問題ないように見えますが、ボタンをクリックしても何も起こりません。何が間違っている可能性がありますか?
ここでは、「Ponuka」と呼ばれるメインのアクティビティ クラスを定義します。
package com.example.s_home;
import android.os.Bundle;
import android.app.ActionBar;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
public class Ponuka extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
getWindow().setBackgroundDrawableResource(R.drawable.pozadie);
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ponuka);
ActionBar actionBar = getActionBar();
actionBar.hide();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_ponuka, menu);
return true;
}
// switch to activity: Osvetlenie --- works fine
public void obrOsv(View view) {
Intent intent = new Intent (this, Osvetlenie.class);
startActivity(intent);
}
// switch to activity: Kurenie --- works fine
public void obrKur(View view) {
Intent intent = new Intent (this, Kurenie.class);
startActivity(intent);
}
// switch to activity: Ochrana --- this isnt working
public void obrBez(View view) {
Intent intent = new Intent (this, Ochrana.class);
startActivity(intent);
System.out.println("ok"); // It will not even print out "ok"
}
}
ここに activity_ponuka.xml があります:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="30dp"
android:layout_marginRight="30dp"
android:layout_marginTop="150dp"
>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/lin1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="center"
>
<Button
android:id="@+id/bezpecnost" <!-- THIS IS THE BUTTON -->
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/zabezp"
android:onClick="obrBez"
/>
<Button
android:id="@+id/kuren"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:background="@drawable/kurenie"
android:onClick="obrKur" />
</LinearLayout>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/lin2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="90dp"
android:gravity="center"
android:orientation="horizontal" >
<Button
android:id="@+id/osvetl"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/osvetlenie"
android:onClick="obrOsv"
/>
<Button
android:id="@+id/pohod"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/pohodlie"
android:layout_marginLeft="10dp"
/>
</LinearLayout>
</RelativeLayout>
もう 1 つ注意: 「Ochrana」という新しいアクティビティが作成されたとき、R.java ファイルを手動で更新する必要がありました。ここで何が間違っていましたか?