Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 搜索图标未显示在操作栏中_Java_Android_Xml_Menuitem - Fatal编程技术网

Java 搜索图标未显示在操作栏中

Java 搜索图标未显示在操作栏中,java,android,xml,menuitem,Java,Android,Xml,Menuitem,我已经在操作栏上有搜索图标,在另一个活动中有相同的代码,但在另一个活动中没有显示以下代码。我在谷歌上搜索了很多关于它的信息,但没有得到任何解决方案 不显示图标的labour_list.class enter code hpackage com.example.builderpro; public class Labour_list extends AppCompatActivity { TextView p_title,p_address; ImageView line; MyViewMo

我已经在操作栏上有搜索图标,在另一个活动中有相同的代码,但在另一个活动中没有显示以下代码。我在谷歌上搜索了很多关于它的信息,但没有得到任何解决方案

不显示图标的labour_list.class

enter code hpackage com.example.builderpro;


public class Labour_list extends AppCompatActivity {

TextView p_title,p_address;
ImageView line;
MyViewModel myViewModel;
RecyclerView recyclerView;
labour_list_adaptor madaptor;
Dproject dproject;
Toolbar toolbar;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_labour_list);
    p_address = findViewById(R.id.addressproject_text);
    p_title = findViewById(R.id.projectname_text);
    line = findViewById(R.id.first_line);
    recyclerView = findViewById(R.id.labour_recycler);
    myViewModel = ViewModelProviders.of(this).get(MyViewModel.class);
    dproject= getIntent().getParcelableExtra("project");
    int project_id=dproject.getId();
    p_title.setText(dproject.getClient_Name());
    p_address.setText(dproject.getLocation());
    toolbar = (Toolbar) findViewById(R.id.custom_toolbar);

    setSupportActionBar(toolbar);
    madaptor=new labour_list_adaptor(project_id,this);

    myViewModel.GetAllLabour().observe(this, new Observer<List<Dlabour>>() {
        @Override
        public void onChanged(List<Dlabour> dlabours) {
            madaptor.setLabour(dlabours);
        }
    });
     buildRecyclerView();



}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.search_menu,menu);
    MenuItem search_item= menu.findItem(R.id.search);

    SearchView searchView =(SearchView) search_item.getActionView();
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            madaptor.getFilter().filter(newText);
            return false;
        }
    });
    return super.onCreateOptionsMenu(menu);
}

public boolean onOptionsItemSelected(MenuItem item) {

    return super.onOptionsItemSelected(item);
}
public void buildRecyclerView()
{
    RecyclerView.LayoutManager layoutManager= new LinearLayoutManager(this);
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setAdapter(madaptor);
    madaptor.setonClickListner(new labour_list_adaptor.onClickListner() {
        @Override
        public void onbtnClick(Dlabour dlabour) {
            Intent intent = new Intent(Labour_list.this,attendence_sheet.class );
            intent.putExtra("labour",dlabour);
            intent.putExtra("project_title",dproject.getClient_Name());
            startActivity(intent);
        }
    });

}
输入代码hpackage com.example.builderpro;
公共类劳工活动列表{
text查看p_标题、p_地址;
影像线;
MyViewModel MyViewModel;
回收视图回收视图;
劳动力列表适配器制造商;
D项目D项目;
工具栏;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u labour\u list);
p_address=findviewbyd(R.id.addressproject_text);
p_title=findViewById(R.id.projectname_text);
行=findViewById(R.id.第一行);
recyclerView=findViewById(R.id.labour\U recycler);
myViewModel=ViewModelProviders.of(this.get)(myViewModel.class);
dproject=getIntent().getParcelableExtra(“项目”);
int project_id=dproject.getId();
p_title.setText(dproject.getClient_Name());
p_address.setText(dproject.getLocation());
toolbar=(toolbar)findviewbyd(R.id.custom_toolbar);
设置支持操作栏(工具栏);
madaptor=新的人工列表适配器(项目id,此);
myViewModel.GetAllLabour().observe(这是新的观察者(){
@凌驾
更改后的公共无效(列表dlabours){
madaptor.setLabour(dlabours);
}
});
buildRecyclerView();
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
getMenuInflater().充气(右菜单.搜索菜单,菜单);
MenuItem search\u item=menu.findItem(R.id.search);
SearchView SearchView=(SearchView)搜索_项。getActionView();
searchView.setOnQueryTextListener(新的searchView.OnQueryTextListener(){
@凌驾
公共布尔值onQueryTextSubmit(字符串查询){
返回false;
}
@凌驾
公共布尔onQueryTextChange(字符串newText){
madaptor.getFilter().filter(newText);
返回false;
}
});
返回super.onCreateOptions菜单(菜单);
}
公共布尔值onOptionsItemSelected(菜单项项){
返回super.onOptionsItemSelected(项目);
}
公共void buildRecyclerView()
{
RecyclerView.LayoutManager LayoutManager=新的LinearLayoutManager(此);
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(madaptor);
madaptor.setonClickListner(新的人工列表适配器.onClickListner(){
@凌驾
单击(Dlabour Dlabour)时出现公共无效{
意向意向=新意向(劳工清单、考勤表、班级);
意向。额外(“劳动”,dlabour);
intent.putExtra(“project_title”,dproject.getClient_Name());
星触觉(意向);
}
});
}
}

以下是activity_labour_list.xml

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true"
tools:context=".Labour_list">

<androidx.constraintlayout.widget.ConstraintLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@color/background"

    >

    <include
        android:id="@+id/include"
        layout="@layout/toolbar"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <TextView
        android:id="@+id/projectname_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:fontFamily="@font/unineue"
        android:text="Project Title"
        android:textColor="@color/yellow"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="@+id/addressproject_text"
        app:layout_constraintTop_toBottomOf="@+id/include" />

    <TextView
        android:id="@+id/addressproject_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:fontFamily="@font/unineue"
        android:text="Address"
        android:textColor="@color/text"
        android:textSize="20sp"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="@+id/first_line"
        app:layout_constraintTop_toBottomOf="@+id/projectname_text" />

    <ImageView
        android:id="@+id/first_line"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="16dp"
        android:layout_marginLeft="16dp"
        android:elevation="5dp"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/addressproject_text"
        app:srcCompat="@drawable/text_viewline" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="136dp"
        android:layout_marginTop="20dp"
        android:layout_marginEnd="136dp"
        android:fontFamily="@font/unineue"
        android:gravity="center"
        android:text="Labour List"
        android:textColor="@color/yellow"
        android:textSize="25sp"
        android:textStyle="bold"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/first_line" />

    <ImageView
        android:id="@+id/imageView4"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="16dp"
        android:elevation="5dp"
        app:layout_constraintEnd_toEndOf="@+id/imageView5"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/textView5"
        app:srcCompat="@drawable/text_viewline2" />

    <ImageView
        android:id="@+id/imageView5"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_marginTop="4dp"
        android:elevation="5dp"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/textView7"
        app:srcCompat="@drawable/text_viewline2" />

    <TextView
        android:id="@+id/textView6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="10dp"
        android:layout_marginTop="8dp"
        android:fontFamily="@font/unineue"
        android:text="Name"
        android:textColor="@color/yellow"
        android:textSize="16sp"
        android:textStyle="bold"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/imageView4" />

    <TextView
        android:id="@+id/textView7"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:fontFamily="@font/unineue"
        android:text="Mobile"
        android:textColor="@color/yellow"
        android:textSize="16sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="@+id/textView6"
        app:layout_constraintEnd_toStartOf="@+id/textView8"
        app:layout_constraintHorizontal_bias="0.558"
        app:layout_constraintStart_toEndOf="@+id/textView6"
        app:layout_constraintTop_toTopOf="@+id/textView6"
        app:layout_constraintVertical_bias="0.0" />

    <TextView
        android:id="@+id/textView8"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"

        android:layout_marginEnd="10dp"
        android:fontFamily="@font/unineue"
        android:text="Attendance"
        android:textColor="@color/yellow"
        android:textSize="16sp"
        android:textStyle="bold"
        app:layout_constraintBottom_toBottomOf="@+id/textView7"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="@+id/textView7"
        app:layout_constraintVertical_bias="0.0" />

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/labour_recycler"
        android:layout_width="0dp"
        android:layout_height="453dp"
        android:layout_marginStart="2dp"
        android:layout_marginTop="10dp"
        android:layout_marginEnd="2dp"
        android:padding="2dp"
        android:scrollbars="vertical"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintHorizontal_bias="0.0"
        app:layout_constraintStart_toStartOf="@+id/imageView5"
        app:layout_constraintTop_toBottomOf="@+id/imageView5" />


</androidx.constraintlayout.widget.ConstraintLayout>

</ScrollView>

以下是search_menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

<item
    android:id="@+id/search"
    android:title="Search"
    android:icon="@drawable/search_"
    app:actionViewClass="androidx.appcompat.widget.SearchView"
    app:showAsAction="always"

    />
</menu>

以下是显示搜索图标projectlist.class的活动

package com.example.builderpro;


public class   project_list extends AppCompatActivity   {
MyViewModel myViewModel;
 List<Dproject>  myprojectlist=new ArrayList<>();
Toolbar toolbar;
RecyclerView recyclerView;
 MyAdaptor myAdaptor;
 int project_id=0;




@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if(keyCode== KeyEvent.KEYCODE_BACK) {
        return false;
    }
    return super.onKeyDown(keyCode, event);
}
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_project_list);

        toolbar=(Toolbar)findViewById(R.id.custom_toolbar);
        setSupportActionBar(toolbar);
    int sid= getIntent().getIntExtra("supervisor_id",0);
    final MyAdaptor myAdaptor1=new MyAdaptor(this,sid);
    myViewModel= ViewModelProviders.of(this).get(MyViewModel.class);
    myViewModel.GetAllProject().observe(this, new Observer<List<Dproject>>() {
        @Override
        public void onChanged(List<Dproject> dprojects) {

            myAdaptor.setproject(dprojects);

        }
    });

    myAdaptor=myAdaptor1;
  BuildRecyclerView();




}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
   getMenuInflater().inflate(R.menu.search_menu,menu);
    MenuItem menuItem=menu.findItem(R.id.search);
    androidx.appcompat.widget.SearchView searchView= (androidx.appcompat.widget.SearchView) 
   menuItem.getActionView();
    searchView.setQueryHint("Search");
    searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
        @Override
        public boolean onQueryTextSubmit(String query) {
            return false;
        }

        @Override
        public boolean onQueryTextChange(String newText) {
            myAdaptor.getFilter().filter(newText);

            return false;
        }
    });
    getMenuInflater().inflate(R.menu.logout_menu,menu);

    return super.onCreateOptionsMenu(menu);
  }


   public boolean onOptionsItemSelected( MenuItem item) {
    if(item.getItemId()==R.id.logout)
    {
        SharedPreferences preferences= getSharedPreferences("checkbox",MODE_PRIVATE);
        SharedPreferences.Editor editor= preferences.edit();
        editor.putString("remember","false");
        editor.apply();
        finish();

    }
    return super.onOptionsItemSelected(item);
       }
   public void BuildRecyclerView()
   {
    recyclerView=(RecyclerView)findViewById(R.id.recycler_view);

    RecyclerView.LayoutManager layoutManager= new LinearLayoutManager(getApplicationContext());
    recyclerView.setLayoutManager(layoutManager);
    recyclerView.setAdapter(myAdaptor);
    myAdaptor.setOnItemClickListner(new MyAdaptor.OnItemClickListener() {
        @Override
        public void onactivityClick(int position,int btnId) {
            Dproject dproject= myAdaptor.getproject(position);
            if (btnId==1){
                Intent intent= new Intent(project_list.this,activity.class);

                intent.putExtra("project",dproject);
                startActivity(intent);
            }
            else
            {
                Intent intent= new Intent(project_list.this,Labour_list.class);

                intent.putExtra("project",dproject);
                startActivity(intent);
            }

        }


    });




   }



        }
package com.example.builderpro;
公共类项目列表扩展了AppCompatActivity{
MyViewModel MyViewModel;
List myprojectlist=新建ArrayList();
工具栏;
回收视图回收视图;
MyAdapter MyAdapter;
int project_id=0;
@凌驾
公共布尔onKeyDown(int-keyCode,KeyEvent事件){
if(keyCode==KeyEvent.keyCode\u BACK){
返回false;
}
返回super.onKeyDown(keyCode,event);
}
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u project\u list);
toolbar=(toolbar)findviewbyd(R.id.custom_toolbar);
设置支持操作栏(工具栏);
int sid=getIntent().getIntExtra(“主管id”,0);
最终MyAdapter MyAdapter1=新MyAdapter(此为sid);
myViewModel=ViewModelProviders.of(this.get)(myViewModel.class);
myViewModel.GetAllProject().observe(这是一个新的观察者(){
@凌驾
更改后的公共无效(列出数据项目){
MyAdapter.setproject(dprojects);
}
});
MyAdapter=MyAdapter1;
BuildRecyclerView();
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
getMenuInflater().充气(右菜单.搜索菜单,菜单);
MenuItem MenuItem=menu.findItem(R.id.search);
androidx.appcompat.widget.SearchView SearchView=(androidx.appcompat.widget.SearchView)
menuItem.getActionView();
searchView.setQueryHint(“搜索”);
searchView.setOnQueryTextListener(新的searchView.OnQueryTextListener(){
@凌驾
公共布尔值onQueryTextSubmit(字符串查询){
返回false;
}
@凌驾
公共布尔onQueryTextChange(字符串newText){
MyAdapter.getFilter().filter(新文本);
返回false;
}
});
getMenuInflater().充气(右菜单、注销菜单、菜单);
返回super.onCreateOptions菜单(菜单);
}
公共布尔值onOptionsItemSelected(菜单项项){
if(item.getItemId()==R.id.logout)
{
SharedReferences首选项=获取SharedReferences(“复选框”,模式为“私有”);
SharedReferences.Editor=首选项.edit();
putString(“记住”、“错误”);
editor.apply();
完成();
}
返回super.onOptionsItemSelected(项目);
}
公共void BuildRecyclerView()
{
recyclerView=(recyclerView)findViewById(R.id.recycler\u视图);
RecyclerView.LayoutManager LayoutManager=新的LinearLayoutManager(getApplicationContext());
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(MyAdapter);
myAdapter.setOnItemClickListner(新的myAdapter.OnItemClickListener(){
@凌驾
活动条上的公共无效(int位置,int btnId){
Dproject Dproject=myadapter.getproject(位置);
如果(btnId==1){
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".project_list"
android:background="@color/background"
android:orientation="vertical"
android:paddingBottom="20dp">
<include layout="@layout/toolbar"/>

<androidx.recyclerview.widget.RecyclerView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/recycler_view"
android:scrollbars="vertical"
/>

</LinearLayout>