2015-04-02 77 views
-4
public class Jav extends Fragment implements View.OnClickListener { 
    public static Jav newInstance(){ 
     Jav fragment = new Jav(); 
     return fragment; 
    } 
    Button bleft,bshowanswer,bright; 
    TextView tv_xx,tv_yy,tvquestion,tvanswers; 
    String[] greque; 
    String[] greans; 
    int index; 
    public Jav() { 
    } 
    public void onActivityCreated(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     super.onActivityCreated(savedInstanceState); 
     index = 0; 
     greque = getResources().getStringArray(R.array.greques); 
     greans = getResources().getStringArray(R.array.greanse); 
     bleft.setOnClickListener(this); 
     bright.setOnClickListener(this); 
     bshowanswer.setOnClickListener(this); 
     tvquestion.setText(greque[index]); 
     tvanswers.setText("press a button for ans"); 
     tv_xx.setText(String.valueOf(index+1)); 
     tv_yy.setText(String.valueOf(greque.length)); 

    } 
    View v; 
    public void onClick(View v) { 
     bleft = (Button) v.findViewById(R.id.bleft); 
     bright = (Button) v.findViewById(R.id.bright); 
     bshowanswer = (Button) v.findViewById(R.id.bshowanswer); 
     tvquestion = (TextView) v.findViewById(R.id.tvquestion); 
     tvanswers =(TextView) v.findViewById(R.id.tvanswers); 
     tv_xx = (TextView) v.findViewById(R.id.tv_xx); 
     tv_yy = (TextView) v.findViewById(R.id.tv_yy); 

     switch (v.getId()){ 
     case R.id.bleft: 
      break; 
     case R.id.bshowanswer: 
      break; 
     case R.id.bright: 
      break; 
     } 
    } 

    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.java, container, 
             false); 
     return rootView; 
    } 

    @Override 
    public void onAttach(Activity activity) { 
     super.onAttach(activity); 
     ((MainActivity) activity).onSectionAttached(2); 
    } 
} 
  1. 當我運行我的程序我的Android應用程序停止,登錄貓圖所示

它的某些部分的工作,但是當我點擊它它顯示錯誤。我在導航抽屜程序logcat的實現,這是如下所示:Android應用程序開發:不幸的是應用程序已停止

04-02 02:23:30.880 1454年至1454年/ example.ashok.appnav d/AndroidRuntime:關閉VM 04-02 2點23: 30.880 1454-1454/example.ashok.appnav W/dalvikvm:threadid = 1:以未捕獲異常退出的線程(group = 0xa6194908) 04-02 02:23:30.880 1454-1454/example.ashok.appnav E/AndroidRuntime:致命異常:主 顯示java.lang.NullPointerException 在example.ashok.appnav.Jav.onActivityCreated(Jav.java:31) 在android.support.v4.app.Fragment.performActivityCreated(Fragment.java:1794) 在android.support.v4.app.FragmentManagerImpl.moveToState(FragmentM anager.java:977) 在android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1136) 在android.support.v4.app.BackStackRecord.run(BackStackRecord.java:739) 在機器人。 android.support.v4.app.FragmentManagerImpl上的support.v4.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1499) :725) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5041 ) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(M ethod.java:511) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:793) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560) at dalvik.system.NativeStart.main(本機方法)

  1. 請解決我的問題。我使用Android工作室
+0

什麼是31號線 – virendrao 2015-04-02 04:32:30

回答

0

你應該把

bleft = (Button) rootView.findViewById(R.id.bleft); 
bright = (Button) rootView.findViewById(R.id.bright); 
bshowanswer = (Button) rootView.findViewById(R.id.bshowanswer); 
tvquestion = (TextView) rootView.findViewById(R.id.tvquestion); 
tvanswers =(TextView) rootView.findViewById(R.id.tvanswers); 
tv_xx = (TextView) rootView.findViewById(R.id.tv_xx); 
tv_yy = (TextView) rootView.findViewById(R.id.tv_yy); 

onCreateView

+0

感謝您的回覆。但我得到了同樣的錯誤... – 2015-04-02 03:29:44

+0

用'rootView'替換'v','View v'沒用。 – PageNotFound 2015-04-02 13:09:57

+0

它的工作原理,但我的左右鍵不起作用 – 2015-04-02 13:45:35

相關問題