1

例外が発生したが、どこを探すべきかわからない場合はどうすればよいですか

つまり、それが NewHomeTabActivity にあることはわかっていますが、どこから検索を開始すればよいでしょうか。ログ行とブレークポイントを挿入しようとしましたが、それでも根本原因を解決できません

01-07 13:39:33.133: W/dalvikvm(12350): threadid=1: thread exiting with uncaught exception (group=0x40c471f8) 
01-07 13:39:33.133: W/System.err(12350): java.lang.IllegalStateException: Could not find a method onTabClicked(View) in the activity class att.uc.ui.screen.NewHomeTabActivity for onClick handler on view class android.widget.RelativeLayout with id 'tab_dialer' 
01-07 13:39:33.138: W/System.err(12350): at android.view.View$1.onClick(View.java:3085) 
01-07 13:39:33.143: W/System.err(12350): at android.view.View.performClick(View.java:3620) 
01-07 13:39:33.143: W/System.err(12350): at android.view.View$PerformClick.run(View.java:14292) 
01-07 13:39:33.143: W/System.err(12350): at android.os.Handler.handleCallback(Handler.java:605) 
01-07 13:39:33.148: W/System.err(12350): at android.os.Handler.dispatchMessage(Handler.java:92) 
01-07 13:39:33.148: W/System.err(12350): at android.os.Looper.loop(Looper.java:137) 
01-07 13:39:33.148: W/System.err(12350): at android.app.ActivityThread.main(ActivityThread.java:4507) 
01-07 13:39:33.153: W/System.err(12350): at java.lang.reflect.Method.invokeNative(Native Method) 
01-07 13:39:33.153: W/System.err(12350): at java.lang.reflect.Method.invoke(Method.java:511) 
01-07 13:39:33.153: W/System.err(12350): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:980) 
01-07 13:39:33.158: W/System.err(12350): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:747) 
01-07 13:39:33.158: W/System.err(12350): at dalvik.system.NativeStart.main(Native Method) 
01-07 13:39:33.158: W/System.err(12350): Caused by: java.lang.NoSuchMethodException: onTabClicked [class android.view.View] 
01-07 13:39:33.163: W/System.err(12350): at java.lang.Class.getConstructorOrMethod(Class.java:460) 
01-07 13:39:33.163: W/System.err(12350): at java.lang.Class.getMethod(Class.java:915) 
01-07 13:39:33.168: W/System.err(12350): at android.view.View$1.onClick(View.java:3078) 
01-07 13:39:33.173: W/System.err(12350): ... 11 more
4

2 に答える 2

1

stactrace を下から上に 1 行ずつ読んで、関連するメッセージを取得します。
アクティビティでメソッドが見つからないため、クラッシュonTabClicked(View)します。

onClick次のようなプロパティが与えられた XML コントロールがあると仮定しています。

android:onClick="onTabClicked"

その場合、アクティビティonTabClicked(View view)には type のパラメーターを受け入れるメソッドが呼び出される必要がありますView。これは必須です。このような:

public void onTabClicked(View view){
}
于 2013-01-07T11:51:07.873 に答える
0

ログはそれがRunTimeExceptionであることを示唆しているので、ログを入れても見つけることができません。使用したonTabClickedメソッド(おそらくxmlファイルで定義されています)がRunTimeで見つかりません。これは、より低いバージョンに対してビルドしているときに、より高いSDKバージョンを呼び出したことが原因である可能性があります。 sdkバージョン、より高いsdkバージョンをターゲットにするか、onclickに代替アプローチを使用できます

同様のリンクは、AndroidTabWidgetが現在のタブのクリックを検出する可能な解決策を提案することができます

于 2013-01-07T11:52:22.550 に答える