2

私の現在のAndroidプロジェクトでは、Butterknifeライブラリを使用してビューをバインドし、onClickアノテーションを使用しています。これはすべて断片的にもうまくいきますが、私は解決策が見つけられません。Butter Knifeを統合する前に問題は見られませんでした。私のアプリケーションでButterknifeを使用した後、メニュー項目とアプリケーション名が消えてしまいました。私はandroidButterKnifeに慣れています。誰も私にこれをどう扱うべきか教えていただけますか?前もって感謝します。メニュー項目は表示されません。バターナイフの統合後

package com.example.niroj.firstscreen; 
    import android.content.DialogInterface; 
    import android.content.Intent;; 
    import android.support.design.widget.FloatingActionButton; 
    import android.support.v4.view.MenuItemCompat; 
    import android.support.v7.app.AlertDialog; 
    import android.support.v7.app.AppCompatActivity; 
    import android.os.Bundle; 
    import android.support.v7.widget.SearchView; 
    import android.support.v7.widget.Toolbar; 
    import android.view.Menu; 
    import android.view.MenuItem; 
    import android.view.View; 
    import android.widget.ListView; 
    import butterknife.BindColor; 
    import butterknife.BindView; 
    import butterknife.ButterKnife; 
    import butterknife.OnClick; 

public class MainActivity extends AppCompatActivity implements SearchView.OnQueryTextListener { 

    @BindView(R.id.search) 
    MenuItem searchitem; 


    @BindView(R.id.fab1) 
    FloatingActionButton floatingActionButton; 

    @BindColor(R.color.colorFolatingButton) 
    int Floating_Button_Color; 

    @BindView(R.id.toolbar) 
    Toolbar toolbar; 



    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     ButterKnife.bind(this); 
     setSupportActionBar(toolbar); 
    } 
    @OnClick(R.id.fab1) 
    public void newForm (View view){ 
     AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); 
     builder.setTitle("Confirm"); 
     builder.setMessage("Are you sure?"); 

     builder.setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) { 
       Intent intent = new Intent(getApplicationContext(),BuilderPage.class); 
       startActivity(intent); 
      } 
     }); 


     builder.setNegativeButton("No", new DialogInterface.OnClickListener() { 
      @Override 
      public void onClick(DialogInterface dialog, int which) { 
       dialog.dismiss(); 
      } 
     }); 

     AlertDialog alert = builder.create(); 
     alert.show(); 
    } 



    // display menu incons from menu_main XML 
    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.frontscreen, menu); 
     MenuItem searchitem = menu.findItem(R.id.search); 
     SearchView searchView = (SearchView) MenuItemCompat.getActionView(searchitem); 
     searchView.setOnQueryTextListener(this); 

     return true; 

    } 

    @Override 
    public boolean onQueryTextSubmit(String query) { 
     return false; 
    } 

    @Override 
    public boolean onQueryTextChange(String newText) { 
     return false; 
    } 
} 

そして、私のメニュー

<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="hint_search" 
    android:icon="@drawable/ic_magnify" 
    app:showAsAction="collapseActionView|ifRoom" 
    app:actionViewClass="android.support.v7.widget.SearchView" /> 

答えて

2

それは

// projectGradle

classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 

//そしてappGradle中でこれをコンパイルを使用して解決した

apply plugin: 'android-apt' 

愚かな間違いかもしれませんが、私はそれを解決してうれしいです。

関連する問題