私がやろうとしているアプリでは、残りのAPIを呼び出す検索を実装したいと思います。ツールバーのSearchViewがアクティビティによって実装されました
私はそれがうまく動作SearchViewを行う方法に長い時間前に尋ねたよう - >How to use SearchView in Toolbar Android
しかし、今、私は(少し多くを学ぶために)「違う」何かを試してみたいです。しかし、私は何か間違っている。私がやろうとしている何
は活動implmement SearchView.OnQueryTextListener
を作るので、私は持っているwhayです:
public class PMov extends AppCompatActivity implements SearchView.OnQueryTextListener {
....
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
}
@Override
public boolean onQueryTextSubmit(String query) {
Toast.makeText(this, "TextSubmit", Toast.LENGTH_SHORT).show();
Logger.d("onQueryTextSubmit: " + query);
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
Toast.makeText(this, "TextChange", Toast.LENGTH_SHORT).show();
Logger.d("onQueryTextChange: " + newText);
return false;
}
}
と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/action_search"
android:title="@string/action_search"
app:actionViewClass="android.support.v7.widget.SearchView"
app:showAsAction="always"
android:icon="@android:drawable/ic_menu_search"/>
</menu>
しかし、いくつかの理由で(確かにI 'm missing something')メソッドは、SearchBoxで何かをクリックして「書き込む」とトリガーされません。
私が紛失していることはありますか?私が見つけたすべての例は、私がずっと前にした私の記事と似ています。
私はあなたがSearchViewに何を聞いているかを伝えなければならないと思っています。 'setOnQueryTextListener(this)' –
確かに分かりませんが、searchViewで 'setOnQueryTextListener'を呼び出し、' SearchView.OnQueryTextListener() 'に匿名の内部クラスを使用してみました。 – user3820753