2016-09-23 70 views
1

是否可以通過浮動操作按鈕在佈局android中添加組件? 因爲使用常規按鈕效果很好。使用浮動操作按鈕添加組件

常規按鈕(效果很好):

btn.setOnclickListener (new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     Fragment frag = new Fragment(); 
     frag.addSpinner; 
    } 
}); 

FAB

fab.setOnclickListener (new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     Fragment frag = new Fragment(); 
     frag.addSpinner; 
    } 
}); 

片段類

public void addSpinner() { 
    Spinner spnAdd = new Spinner(getActivity()); 
    layoutDinamic.addView(spnAdd); 
} 

LOG:

   --------- beginning of crash 
       E/AndroidRuntime: FATAL EXCEPTION: main 
       Process: com.example.victorvicari.actionbarteste, PID: 2714 
       java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.res.Resources android.content.Context.getResources()' on a null object reference 
        at android.view.ViewConfiguration.get(ViewConfiguration.java:364) 
        at android.view.View.<init>(View.java:3788) 
        at android.view.View.<init>(View.java:3892) 
        at android.view.ViewGroup.<init>(ViewGroup.java:573) 
        at android.widget.AdapterView.<init>(AdapterView.java:246) 
        at android.widget.AbsSpinner.<init>(AbsSpinner.java:70) 
        at android.widget.Spinner.<init>(Spinner.java:232) 
        at android.widget.Spinner.<init>(Spinner.java:199) 
        at android.widget.Spinner.<init>(Spinner.java:154) 
        at android.widget.Spinner.<init>(Spinner.java:139) 
        at android.widget.Spinner.<init>(Spinner.java:112) 
        at com.example.victorvicari.actionbarteste.Fragments.Fase2Fragment.addSpinner(Fase2Fragment.java:81) 
        at com.example.victorvicari.actionbarteste.MainActivity$1.onClick(MainActivity.java:70) 
        at android.view.View.performClick(View.java:5198) 
        at android.view.View$PerformClick.run(View.java:21147) 
        at android.os.Handler.handleCallback(Handler.java:739) 
        at android.os.Handler.dispatchMessage(Handler.java:95) 
        at android.os.Looper.loop(Looper.java:148) 
        at android.app.ActivityThread.main(ActivityThread.java:5417) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
+0

您確切的問題是什麼? – Nikhil

+0

如果它與一個基本的按鈕一起工作,那麼它肯定應該和一個晶圓廠一起工作,你能明確嗎? –

回答

0

是的,這是可能的。 FloatingActionButton是一個ImageButton。您可以使用執行任何操作。

+0

我會編輯並把日誌 –

0

Spinner spinner = new Spinner(context); //傳遞活動或上下文

+0

我做了,並仍然存在錯誤 –

+0

我剛剛重新啓動AndroidStudio並工作。謝謝。 –