2017-02-19 9 views
1

私はJavaについては初心者ですので、新卒者のために私の大学のプロジェクトに参加しました(私のように:c)。まあ、私は、メインメニューから、新しい活動を開くことに問題があります。新しいアクティビティを開くためのボタンの問題

デバッグはうまく動作しますが、アプリケーションは起動しますが、理論上は新しい.javaファイル内の別のアクティビティを開く必要があるImageButton "新規ゲーム"をタップすると、アプリケーションがクラッシュします。私は家庭教師に質問しました(彼女も学生です)、何が問題なのか分かりません。すべてうまくいくはずですから。ここで

はのImageButton自体のmain_activity.xmlファイルの一部です:

<ImageButton 
    android:layout_width="178dp" 
    android:layout_height="20dp" 
    android:id="@id/start" 
    android:src="@drawable/nowa" 
    android:layout_centerHorizontal="true" 
    android:adjustViewBounds="true" 
    android:cropToPadding="false" 
    android:layout_below="@+id/hlTopBar" 
    android:background="#00000000" 
    android:scaleType="fitXY" 
    android:layout_weight="0.02" 
    android:layout_margin="10dp" /> 

MainActivity.java

import static com.example.wojciech.myapplication.R.id.start; 
import static com.example.wojciech.myapplication.R.layout.activity_main; 
public class MainActivity extends AppCompatActivity implements View.OnClickListener { 

ImageButton przyciskStart; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(activity_main); 

    przyciskStart = (ImageButton) findViewById(start); 
    przyciskStart.setOnClickListener(this); 
} 

@Override 
public void onClick (View a){ 
    if(a.getId()== start) { 
     Intent intent = new Intent(getApplicationContext(), nowa_gra.class); 
     startActivity(intent); 
    } 

とnowa_gra.java

package com.example.wojciech.myapplication; 

import android.os.Bundle; 

import android.support.v7.app.AppCompatActivity; 

import static com.example.wojciech.myapplication.R.layout.nowa1; 

public class nowa_gra extends AppCompatActivity{ 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(nowa1); 
} 

} 

nowa1があります.xmlファイルをレイアウトに保存します。

私の質問は何ですか、何か間違っていると思いますか?

私は本当にあなたたちは提供することができます任意の助けに感謝:)

+0

は、あなたが得るエラーを投稿できる正常に動作しますか? – mVck

+0

私はエラーを起こさない、アプリはちょうど "動作を停止"。 –

+0

[link](http://pastebin.com/j9jBpiaE) これは、AndroidスタジオのAndroidモニターが言うことです:c –

答えて

1

登録されていない場合マニフェストであなたの活動を登録します。

0
また、例えば、あなたのAndroid Manifiest.xmlファイルで新しいアクティビティを登録し、この

import static com.example.wojciech.myapplication.R.id.start; 
    import static com.example.wojciech.myapplication.R.layout.activity_main; 

    public class MainActivity extends AppCompatActivity implements View.OnClickListener { 

ImageButton przyciskStart; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 

addListenerOnImageButton(); 
} 

public void addListenerOnImageButton() { 

    final Context context = this; 

    przyciskStart = (ImageButton) findViewById(R.id.start); 

    przyciskStart.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 
      Intent intent = new Intent(context, nowa_gra.class); 
      startActivity(intent); 
      finish(); 
     } 
    }); 
    } 
} 

のように見えるためにあなたのMainactivity.javaを変更

。あなたのxmlファイルのrepleceで

<activity 
     android:name=".nowa_gra" 
     android:label="nowa_gra" 
     android:screenOrientation="portrait" /> 
-1

android:id="@id/start"android:id="@+id/start"にRESが

+0

この変更はおそらく必要ですが、例外は修正されません。 –

関連する問題