0

我在我的應用程序中使用了ActionBarSherlock,它適用於2.3.3及更高版本。在我的應用程序片段選項卡主機中,我試圖在其中一項活動中實施ListView,但我得到ClassCastException。請找到必要的代碼。嘗試在FragmentTabHost中實現ListView時的ClassCastException

public View onCreateView(LayoutInflater inflater, ViewGroup container, 
       Bundle savedInstanceState) { 


      // Create FragmentTabHost 
      mTabHost = new FragmentTabHost(getSherlockActivity()); 
      // Locate fragment1.xml to create FragmentTabHostx 
      mTabHost.setup(getSherlockActivity(), getChildFragmentManager(), R.layout.fragment1); 
      // Create Tab 1 

      mTabHost.addTab(
        mTabHost.newTabSpec("tab1").setIndicator("ALL", 
          getResources().getDrawable(R.drawable.all)), 
        CreateEvent.class, null); 
      //mTabHost.addTab(mTabHost.newTabSpec("tab1").setContent(R.drawable.fb).setIndicator("Tab 1"), CreateEvent.class, null); 
       // Create Tab 2 
      mTabHost.addTab(mTabHost.newTabSpec("tab2").setIndicator("NEARBY",getResources().getDrawable(R.drawable.near_by)), CreateEvent.class, null); 

      mTabHost.getTabWidget().setBackgroundColor(Color.GRAY); 
      return mTabHost; 
     } 

CreateEvent.class有一個listView在裏面。 public class CreateEvent extends SherlockListActivity implements OnItemClickListener{ }

logcat的

08-22 18:37:48.237: E/AndroidRuntime(917): FATAL EXCEPTION: main 
08-22 18:37:48.237: E/AndroidRuntime(917): java.lang.ClassCastException: com.android.myapp.events.CreateEvent 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.support.v4.app.Fragment.instantiate(Fragment.java:394) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.support.v4.app.FragmentTabHost.doTabChanged(FragmentTabHost.java:339) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.support.v4.app.FragmentTabHost.onAttachedToWindow(FragmentTabHost.java:276) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.View.dispatchAttachedToWindow(View.java:6156) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1122) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewGroup.dispatchAttachedToWindow(ViewGroup.java:1127) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewRoot.performTraversals(ViewRoot.java:765) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.view.ViewRoot.handleMessage(ViewRoot.java:1859) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.os.Handler.dispatchMessage(Handler.java:99) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.os.Looper.loop(Looper.java:123) 
08-22 18:37:48.237: E/AndroidRuntime(917): at android.app.ActivityThread.main(ActivityThread.java:3683) 
08-22 18:37:48.237: E/AndroidRuntime(917): at java.lang.reflect.Method.invokeNative(Native Method) 
08-22 18:37:48.237: E/AndroidRuntime(917): at java.lang.reflect.Method.invoke(Method.java:507) 
08-22 18:37:48.237: E/AndroidRuntime(917): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 
08-22 18:37:48.237: E/AndroidRuntime(917): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 
08-22 18:37:48.237: E/AndroidRuntime(917): at dalvik.system.NativeStart.main(Native Method) 
+0

所以你wana一些'活動'到'片段'? ...祝你好運 – Selvin

+0

在fragmenttabhost我希望顯示一個ListView – onkar

+0

爲FSM! 'CreateEvent'擴展了'Activity',但它應該擴展'ListFragment',因爲你使用'FragmentTabHost'並且你有'ListView' ...應該有ABS API中的一些類來做這個... – Selvin

回答

1

我試圖解決與錯誤approach.I問題使用this question爲嚮導,以解決這個問題。

相關問題