0

Androidアプリケーションを開発していて、タブホストを使用しています。アクティビティを処理するために、すべてのタブからアクティビティ グループを作成しました。

これらの「親」アクティビティから、子アクティビティに移動します。

この子アクティビティには、スピナーとボタンのあるページがあります。

最初はボタンが機能していましたが、スピナーをクリックするとアプリケーションがクラッシュしました。これを修正するには、変更する必要がありました

setContentView(R.layout.sho_add_exercise_event); 

View contentView = LayoutInflater.from(getParent()).inflate(R.layout.show_add_exercise_event, null);
setContentView(contentView);

スピナーは動作していますが、ボタンをクリックするとアプリケーションがクラッシュします。

これはログ出力です

04-05 12:42:58.890: E/AndroidRuntime(4485): Uncaught handler: thread main exiting due to uncaught exception
04-05 12:42:58.930: E/AndroidRuntime(4485): java.lang.IllegalStateException: Could not find a method onClickAdd(View) in the activity
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.View$1.onClick(View.java:2016)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.View.performClick(View.java:2344)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.View.onTouchEvent(View.java:4133)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.widget.TextView.onTouchEvent(TextView.java:6510)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.View.dispatchTouchEvent(View.java:3672)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:882)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent

04-05 12:42:58.930: E/AndroidRuntime(4485): Caused by: java.lang.NoSuchMethodException: onClickAdd
04-05 12:42:58.930: E/AndroidRuntime(4485):     at java.lang.ClassCache.findMethodByName(ClassCache.java:308)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at java.lang.Class.getMethod(Class.java:1007)
04-05 12:42:58.930: E/AndroidRuntime(4485):     at android.view.View$1.onClick(View.java:2013)
04-05 12:42:58.930: E/AndroidRuntime(4485):     ... 37 more

編集:

アクティビティでこのメソッドを取得しましたが、View contentView = LayoutInflater.from(getParent()).inflate(R.layout.show_add_exercise_event, null); を実行したため、メソッドが見つかりません。setContentView(contentView);

some1が私を助けてくれることを願っています:D!

4

2 に答える 2

1

メッセージは自明です:Could not find a method onClickAdd(View) in the activity

このイベントでメソッドを宣言します。

public void onClickAdd(View v)
{
   .......
   .......
}

どこかで追加ボタンの onClickAdd() メソッドを宣言したので、私は思います。

于 2012-04-05T12:56:09.173 に答える
0

解決策を見つけました。

xml ファイルの onClick を削除しました。そして、私のJavaコードにsetOnClickListenerを追加しました。

これでうまくいきました:)これが他の人に役立つことを願っています!

于 2012-04-06T08:29:11.493 に答える