Java 工具栏错误使我的应用程序不断崩溃| Android studio

Java 工具栏错误使我的应用程序不断崩溃| Android studio,java,android,Java,Android,我的代码中的工具栏一直有一个错误,如果我取出代码,它可以正常工作,但在我为数据库添加单独的行之前,它可以正常工作,所以我真的很困惑为什么它不工作。我还在底部添加了XML private static final String TAG = MainActivity.class.getSimpleName(); private ArrayList<Item>list = new ArrayList<Item>(); private ItemAdapter adapter;

我的代码中的工具栏一直有一个错误,如果我取出代码,它可以正常工作,但在我为数据库添加单独的行之前,它可以正常工作,所以我真的很困惑为什么它不工作。我还在底部添加了XML

private static final String TAG = MainActivity.class.getSimpleName();

private ArrayList<Item>list = new ArrayList<Item>();
private ItemAdapter adapter;
private RecyclerView recyclerView;
private AlertDialog dialog;

@Override
***protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);***

    FloatingActionButton fab = (FloatingActionButton) 
    findViewById(R.id.fab);


    fetchRecords();

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

            LayoutInflater inflater = getLayoutInflater();
            View mView1 = inflater.inflate(R.layout.activity_add,null);

            final EditText input_name = (EditText) 
            mView1.findViewById(R.id.Name);
            final EditText input_age = (EditText) 
            mView1.findViewById(R.id.Age);
            final EditText input_weight = (EditText) 
            mView1.findViewById(R.id.Weight);
            final EditText input_height = (EditText) 
            mView1.findViewById(R.id.Height);
            final EditText input_reach = (EditText) 
            mView1.findViewById(R.id.Reach);
            final Button btnSave = (Button) 
            mView1.findViewById(R.id.btnSave);

            AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
            builder.setView(mView1).setTitle("Add new Record")
                    .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                        @Override
                        public void onClick(DialogInterface dialogInterface, int i) {

                            dialog.dismiss();
                        }
                    });

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

                    String name = input_name.getText().toString();
                    String age = input_age.getText().toString();
                    String weight = input_weight.getText().toString();
                    String height = input_height.getText().toString();
                    String reach = input_reach.getText().toString();

                    if (name.equals("") && age.equals("") && weight.equals("") && height.equals("")&& reach.equals("")){
                        Snackbar.make(view,"Field incomplete",Snackbar.LENGTH_SHORT).show();

                    }else {
                        Save(name,age,name,height,reach);
                        dialog.dismiss();
                        Snackbar.make(view,"Saving",Snackbar.LENGTH_SHORT).show();
                    }
                }
            });

            dialog = builder.create();
            dialog.show();


        }
    });
}

public void fetchRecords() {

    recyclerView = (RecyclerView) findViewById(R.id.recycler);
    adapter = new ItemAdapter(this,list);

    LinearLayoutManager layoutManager = new LinearLayoutManager(MainActivity.this);
    layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setAdapter(adapter);

    list.clear();

    Functions functions = new Functions(MainActivity.this);

    ArrayList<Item>data = functions.getAllRecords();

    if (data.size()>0){
        for (int i = 0; i<data.size(); i++){

            int id = data.get(i).getId();
            String namel = data.get(i).getName();
            String agel = data.get(i).getAge();
            String weightl = data.get(i).getWeight();
            String heightl = data.get(i).getHeight();
            String reachl = data.get(i).getHeight();

            Item item = new Item();

            item.setId(id);
            item.setName(namel);
            item.setAge(agel);
            item.setWeight(weightl);
            item.setHeight(heightl);
            item.setReach(reachl);
            list.add(item);

        }adapter.notifyDataSetChanged();

    }else {
        Toast.makeText(MainActivity.this, "No Records found.", Toast.LENGTH_SHORT).show();
    }
}

private void Save(String name, String age, String weight, String height, String reach) {


    Functions functions = new Functions(MainActivity.this);
    Item item = new Item();

    item.setName(name);
    item.setAge(age);
    item.setWeight(weight);
    item.setHeight(height);
    item.setHeight(reach);
    functions.Insert(item);
    Toast.makeText(MainActivity.this, "Saved...", Toast.LENGTH_SHORT).show();
    fetchRecords();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_main, menu);
    return true;
}
private static final String TAG=MainActivity.class.getSimpleName();
private ArrayListlist=new ArrayList();
专用项适配器;
私人回收站;
私人警报对话框;
@凌驾
***创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar Toolbar=(Toolbar)findViewById(R.id.Toolbar);
设置支持操作栏(工具栏)***
FloatingActionButton fab=(FloatingActionButton)
findViewById(R.id.fab);
fetchRecords();
fab.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
LayoutInflater充气机=getLayoutInflater();
视图mView1=充气机。充气(R.layout.activity_add,null);
最终编辑文本输入_name=(编辑文本)
mView1.findViewById(R.id.Name);
最终编辑文本输入\年龄=(编辑文本)
mView1.findViewById(R.id.Age);
最终编辑文本输入_权重=(编辑文本)
mView1.findViewById(R.id.重量);
最终编辑文本输入_高度=(编辑文本)
mView1.findViewById(R.id.高度);
最终编辑文本输入_reach=(编辑文本)
mView1.findViewById(R.id.Reach);
最终按钮btnSave=(按钮)
mView1.findViewById(R.id.btnSave);
AlertDialog.Builder=新建AlertDialog.Builder(MainActivity.this);
builder.setView(mView1).setTitle(“添加新记录”)
.setNegativeButton(“取消”,新建DialogInterface.OnClickListener()){
@凌驾
公共void onClick(DialogInterface,inti){
dialog.dismise();
}
});
btnSave.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图){
String name=input_name.getText().toString();
String age=input_age.getText().toString();
字符串权重=输入_weight.getText().toString();
字符串高度=输入\高度.getText().toString();
String reach=input_reach.getText().toString();
if(name.equals(“”)&&age.equals(“”)&&weight.equals(“”)&&height.equals(“”)&&reach.equals(“”){
Snackbar.make(视图,“字段不完整”,Snackbar.LENGTH_SHORT).show();
}否则{
保存(姓名、年龄、姓名、身高、距离);
dialog.dismise();
Snackbar.make(查看“保存”,Snackbar.LENGTH_SHORT.show();
}
}
});
dialog=builder.create();
dialog.show();
}
});
}
公共档案(){
recyclerView=(recyclerView)findViewById(R.id.recycler);
adapter=新项目adapter(此,列表);
LinearLayoutManager layoutManager=新的LinearLayoutManager(MainActivity.this);
layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(适配器);
list.clear();
函数=新函数(MainActivity.this);
ArrayListdata=functions.getAllRecords();
如果(data.size()>0){

对于styles.xml中的(inti=0;i,请使用Theme.AppCompat.Light.NoActionBar

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
........
</style>

........
使用

而不是

Toolbar 

在布局中。另外,请确保在样式中使用
主题.AppCompat.Light.NoActionBar

Hm…您可能会遇到什么错误?我已在底部添加了运行时错误谢谢!您的错误日志是什么?
androidx.appcompat.widget.Toolbar 
Toolbar