【发布时间】: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