Android 安卓呼叫功能标签点击?
我试图调用一个函数来打开一个活动,但它不起作用。请给我一些解决办法 我正在尝试此代码,但显示空指针异常 在这一行“tabHost.getChildAt(2.setOn)”显示错误 请给我一些解决办法 谢谢 堆栈跟踪:Android 安卓呼叫功能标签点击?,android,android-tabhost,Android,Android Tabhost,我试图调用一个函数来打开一个活动,但它不起作用。请给我一些解决办法 我正在尝试此代码,但显示空指针异常 在这一行“tabHost.getChildAt(2.setOn)”显示错误 请给我一些解决办法 谢谢 堆栈跟踪: 04-02 23:02:24.685: E/AndroidRuntime(23622): FATAL EXCEPTION: main 04-02 23:02:24.685: E/AndroidRuntime(23622): Process: com.speedlock, PID:
04-02 23:02:24.685: E/AndroidRuntime(23622): FATAL EXCEPTION: main
04-02 23:02:24.685: E/AndroidRuntime(23622): Process: com.speedlock, PID: 23622
04-02 23:02:24.685: E/AndroidRuntime(23622): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.speedlock/com.speedlock.Home}: java.lang.NullPointerException
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.ActivityThread.access$800(ActivityThread.java:135)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.os.Handler.dispatchMessage(Handler.java:102)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.os.Looper.loop(Looper.java:136)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.ActivityThread.main(ActivityThread.java:5017)
04-02 23:02:24.685: E/AndroidRuntime(23622): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 23:02:24.685: E/AndroidRuntime(23622): at java.lang.reflect.Method.invoke(Method.java:515)
04-02 23:02:24.685: E/AndroidRuntime(23622): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
04-02 23:02:24.685: E/AndroidRuntime(23622): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
04-02 23:02:24.685: E/AndroidRuntime(23622): at dalvik.system.NativeStart.main(Native Method)
04-02 23:02:24.685: E/AndroidRuntime(23622): Caused by: java.lang.NullPointerException
04-02 23:02:24.685: E/AndroidRuntime(23622): at com.speedlock.Home.onCreate(Home.java:50)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.Activity.performCreate(Activity.java:5231)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
04-02 23:02:24.685: E/AndroidRuntime(23622): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
04-02 23:02:24.685: E/AndroidRuntime(23622): ... 11 more
我已经解决了iisu问题请把代码改成这个
tabHost.getTabWidget().getChildAt(2).setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
if(action == MotionEvent.ACTION_UP)
{
Toast.makeText(getApplicationContext(), "ss", 3000).show();
//Something to do
return true; // do this if you dont want the tab to change
}
return false;
}
});
我已经添加了satck跟踪,请检查
tabHost.getTabWidget().getChildAt(2).setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
if(action == MotionEvent.ACTION_UP)
{
Toast.makeText(getApplicationContext(), "ss", 3000).show();
//Something to do
return true; // do this if you dont want the tab to change
}
return false;
}
});