2012-05-11 9 views
0

私はアンドロイドの開発を学んでいます。ボタン(id:button1)からなる単純なレイアウトを作成しました。このボタンにOnClickListenerを追加しました。このボタンをクリックすると、次のページ(レイアウト)が表示されます。コードにエラーはないようですが、実行するとクラッシュします。私はアンドロイド2.3.3と2.2エミュレータを使用してそれを試してみましたが、成功しません。 onclicklistenerの部分をコメントアウトすると、アプリが実行されます。 私はさまざまなサイトや質問で検索しましたが、成功しませんでした。OnClickListenerがクラッシュするアプリケーション

package com.sid.next; 

import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.Button; 

public class mySplash extends Activity { 
    /** Called when the activity is first created. */ 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     final Button b1 = (Button)findViewById(R.id.button1); 
     b1.setOnClickListener(new View.OnClickListener() { 

      @Override 
      public void onClick(View arg0) { 
       // TODO Auto-generated method stub 
       startActivity(new Intent("com.sid.next.SHOWMENU")); 
      } 
     }); 

    } 
} 

EDIT1: stacktrace

EDIT2:main.xml

EDIT3:[を解決!]私はどのcontentviewセットを持っていなかった。ここ は、JavaコードでありますmyMenu.javaアクティビティ用です。とにかく、ありがとう!

edit4:SHOWMENU場合R.id.button1

+3

stacktraceの投稿はどうですか? –

+0

どうすればいいですか?私はeclipse/javaを初めて使う人です。 – Siddhant

+0

「SHOWMENU」とは何ですか?アクティビティ&クラス??? –

答えて

1

大丈夫です。最終的に私はそれを自分で考え出しました! 私はmyMenu.javaクラスのcontentViewを設定していませんでした。

も変更android.R.id.button1~R.id.ボタン1。 (クレジット:Imran Rana)

皆様ありがとうございます!

0

android.R.id.button1を変更するには、その後、マニフェストファイルで宣言しない活動です。

私はこれがあなたの選択肢であると考えています。あなたのAndroidManifest.xmlファイルに<application > </application>タグ内

<activity 
     android:name=".SHOWMENU" 
     android:label="@string/app_name" /> 

追加

はただ、この方法を試してみてください、あなたのXMLで

<application 
    android:icon="@drawable/icon" 
    android:label="@string/app_name" > 
    <activity 
     android:name="com.sid.next.SHOWMENU" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <activity 
     android:name="com.sid.next.SHOWMENU" 
     android:label="@string/app_name" /> 
</application> 
+0

私はすでに はここに私のマニフェストファイルであることをやった:「 <活動 アンドロイド:名= "MYMENU。" アンドロイド:ラベル= "@文字列/ APP_NAMEを"> <意図-フィルタ> <アクションアンドロイド:名前= "com.sid.next.SHOWMENU" /> <カテゴリアンドロイド:名= "android.intent.category.DEFAULT" /> 「私が見ることができない – Siddhant

+0

。 – Bhavin

+0

http://pastebin.com/vGxq5itW – Siddhant

0

Rathter呼び出すアクティビティこのよう

startActivity(new Intent("com.sid.next.SHOWMENU")); 

をコピーして貼り付け

Intent g = new Intent(new Intent(mySplash .this, SHOWMENU.class)); 
      startActivity(g); 
+0

nope。アプリはまだクラッシュします。 – Siddhant

+0

ボタンをクリックするとクラッシュします。 – Siddhant

+0

私はあなたと同じコードを使用しました –

0

0この

Intent i = new Intent(new Intent(CURRENT_SCREEN_NAME.this, NEXT_SCREEN_NAME.class)); 
startActivity(i); 

を試してみて、アクティビティの下マニフェストにこれを書くことを忘れないでください。

+0

nope。ボタンをクリックするとアプリがクラッシュする – Siddhant

+0

マニフェストアプリで次のアクティビティが定義されていない場合、ボタンをクリックするとクラッシュします。 – sachi

+0

[解決済み!] myMenu.javaアクティビティのcontentviewセットがありませんでした。とにかく、ありがとう! – Siddhant

1
<activity android:name=".NEXT_SCREEN_NAME" ></activity> 

により

final Button b1 = (Button)findViewById(android.R.id.button1); 

を交換:Rによってandroid.Rを交換つまり

final Button b1 = (Button)findViewById(R.id.button1); 

+0

done ...しかし成功しませんでした – Siddhant

+0

[解決済み!] myMenu.javaアクティビティのcontentviewセットはありませんでした。とにかく、ありがとう! – Siddhant

+0

これはいいです、あなたはまだ** android.R **または** R **を使用していますか? –

関連する問題