【问题标题】:null pointer on floating button浮动按钮上的空指针
【发布时间】:2017-12-01 07:27:27
【问题描述】:

我为电话拨号创建了浮动操作按钮。试图运行该应用程序,但最终在我的工厂调用中出错。 我不知道浮动操作按钮出了什么问题。 你能告诉我如何解决它吗?

这是我的工厂代码

    FloatingActionButton fabshare = (FloatingActionButton) findViewById(fab);
                FloatingActionButton fabcall = (FloatingActionButton) findViewById(fab);

                fabshare.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {

                        Intent i = new Intent(Intent.ACTION_SEND);
                        i.setType("text/plain");
                        String shareSubject = String.valueOf(dataLaundry.getNama());
                        String shareBody = String.valueOf(dataLaundry.getAlamat());
                        i.putExtra(Intent.EXTRA_SUBJECT, "Laundrize - " + shareSubject);
                        i.putExtra(Intent.EXTRA_TEXT, shareSubject + "\n" + shareBody + "\n\n" +
                                    "http://maps.google.com/?q="
                        + alamat.getText().toString().toLowerCase().replaceAll(" ","+"));
                        startActivity(Intent.createChooser(i, "Share via"));


                    }
                });
                fabcall.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View view) {
                        Intent callIntent = new Intent (Intent.ACTION_DIAL, Uri.parse("tel:"+ noTelp));
                        startActivity(callIntent);
                                                }
                                            });\

这里是错误

    FATAL EXCEPTION: main
                                                                           Process: com.example.rizkafs.laundrize, PID: 25885
                                                                           java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.rizkafs.laundrize/com.example.rizkafs.laundrize.DetailsActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.design.widget.FloatingActionButton.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
                                                                               at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2660)
                                                                               at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2730)
                                                                               at android.app.ActivityThread.access$800(ActivityThread.java:185)
                                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1567)
                                                                               at android.os.Handler.dispatchMessage(Handler.java:111)
                                                                               at android.os.Looper.loop(Looper.java:194)
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5847)
                                                                               at java.lang.reflect.Method.invoke(Native Method)
                                                                               at java.lang.reflect.Method.invoke(Method.java:372)
                                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1010)
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
                                                                            Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.design.widget.FloatingActionButton.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
                                                                               at com.example.rizkafs.laundrize.DetailsActivity.onCreate(DetailsActivity.java:46)
                                                                               at android.app.Activity.performCreate(Activity.java:6117)
                                                                               at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1123)
                                                                               at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2613)
                                                                               at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2730) 
                                                                               at android.app.ActivityThread.access$800(ActivityThread.java:185) 
                                                                               at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1567) 
                                                                               at android.os.Handler.dispatchMessage(Handler.java:111) 
                                                                               at android.os.Looper.loop(Looper.java:194) 
                                                                               at android.app.ActivityThread.main(ActivityThread.java:5847) 
                                                                               at java.lang.reflect.Method.invoke(Native Method) 
                                                                               at java.lang.reflect.Method.invoke(Method.java:372) 
                                                                               at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1010) 
                                                                               at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) 

【问题讨论】:

  • FloatingActionButton fabshare = (FloatingActionButton) findViewById(R.id.fab);
  • @Rizka Febrila 注册你的 FloatingActionButton id..你的 pbm 得到解决
  • 这里是什么工厂??是 fab=R.id.fabId ???

标签: android nullpointerexception floating-action-button


【解决方案1】:

定义活动中两个 Fab 图标的 id。

 FloatingActionButton fabshare = (FloatingActionButton) findViewById(R.id.fabshare);
 FloatingActionButton fabcall = (FloatingActionButton) findViewById(R.id.fabcall);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-03-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多