2013-08-22 15 views
0

我是新來的android.I有一個問題。我使用fragments.My應用程序有5個選項卡。我的應用程序意外停止後,一個特定的選項卡,然後移動到另一個選項卡,並旋轉當前視圖。通過調試我得到了錯誤。錯誤是,當旋轉當前視圖控制去上一課的onActivtyCreated()。雖然旋轉設備上一課onActivityCreated()總是調用

datetext.setText(TimeFormater.FormatDate(dateString));

該行給出空指針異常。控件總是轉到下面給出的代碼。

public class ScheduleDailyView extends SherlockFragment{public void onActivityCreated(Bundle savedInstanceState) { 
    super.onActivityCreated(savedInstanceState); 
    nextbutn = (Button)getActivity().findViewById(R.id.buttonnext); 
    prebutn = (Button)getActivity().findViewById(R.id.buttonpre); 
    listview = (ListView)getActivity().findViewById(R.id.lv_schedule_listView); 
    datetext = (TextView)getActivity().findViewById(R.id.textscheduleviewdate); 
    dateString = TimeFormater.DateToString(Schedule.currentDate.getTime()); 
    ArrayList<ViewScheduleDTO> scheduleList =scheduleDaily.readschedules(dateString,doctor_id); 
    datetext.setText(TimeFormater.FormatDate(dateString)); 
    rowitems = scheduleDaily.getScheduleRowList(dateString,scheduleList); 
    listview.setAdapter(new ScheduleCustomView(appContext, rowitems)); 
    if(userType.equals(UserTypeEnum.Admin.getDisplayName()) || userType.equals(UserTypeEnum.Doctor.getDisplayName())) 
     listview.setOnItemLongClickListener(this); 
    listview.setOnItemClickListener(this); 
    nextbutn.setOnClickListener(this); 
    prebutn.setOnClickListener(this); 
}} 
+0

您確定datetext存在於佈局中嗎? –

+0

Ya datetext – jithin

回答

0

嘗試......在你的manifest.xml

<activity android:name="Your Activity Name" 
      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" android:windowSoftInputMode="adjustPan"/> 
+0

它works.Thanks – jithin

0

無論何時移動設備屏幕,都會重新創建當前活動。在什麼方向你希望你的應用程序能夠..你可以在清單文件中聲明其固定它....如果是在兩個方向的經過以下幾個環節:

Handling Runtime Changes

希望這將幫助你....

+0

但我的問題是控制去以前執行的活動 – jithin

+0

我認爲你的目前的活動是在方向變化和活動從活動堆棧出現 – Shane

+0

雅,解決它通過添加android:configChanges =「keyboard | keyboardHidden | orientation:screenLayout | uiMode | screenSize | smallestScreenSize「android:windowSoftInputMode =」adjustPan「到manifest.Thanks。 – jithin

0

加入這一行檢查Manifest.xml文件的方向。從縱向變爲橫向或反之亦然可能會有所幫助。