空对象引用工具栏android

时间:2016-10-13 13:45:14

标签: java android object nullpointerexception

我正在尝试制作第二个Toolbar,旁边是我顶栏中的那个Button。 基本上有一个Button,当按下它时,窗口中会弹出一个条。 用户应该能够阅读栏上的内容并推送public void showDialogue() { //Set popupscherm as view View v = getLayoutInflater().inflate(R.layout.popupscherm,null); AlertDialog.Builder adb = new AlertDialog.Builder(GraphActivity.this); adb.setView(v); // Find the toolbar view inside the activity layout toolbar = (Toolbar) findViewById(R.id.toolbar); toolbar.setTitle("test"); //Here it gives the error AlertDialog alert = adb.create(); alert.show(); 。 现在我正试着在那里得到文字。但这似乎不起作用。

.java函数:(按下某个按钮时调用,显示工具栏)

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:minHeight="?attr/actionBarSize"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="?attr/colorPrimary">
    </android.support.v7.widget.Toolbar>

    </LinearLayout>

popupscherm.xml

Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.Toolbar.setTitle(java.lang.CharSequence)' on a null object reference

错误:

public partial class ValuesController : ApiController { public IHttpActionReault Get() { return Ok(); } }

1 个答案:

答案 0 :(得分:4)

使用

 View v = getLayoutInflater().inflate(R.layout.popupscherm,null);
 toolbar = (Toolbar) v.findViewById(R.id.toolbar);

而不是

toolbar = (Toolbar) findViewById(R.id.toolbar);

因为view v具有popupscher.xml视图,否则使用此findViewById(R.id.toolbar);您试图在当前设置的活动布局中找到与popupscherm.xml不同的工具栏