2015-01-07 4 views
6

新しいマテリアルテーマとAppCompat 21を使用しているときに、タブレットにSearchViewを配置したままにしたいと思います。これは可能ですか、独自のカスタムレイアウトをツールバーに追加する必要がありますか?AppCompat 21のSearchViewをツールバーに合わせることは可能ですか?

enter image description here

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    getMenuInflater().inflate(R.menu.menu_search, menu); 
    mnuSearch = menu.findItem(R.id.menu_search); 
    android.support.v7.widget.SearchView searchView = (SearchView) MenuItemCompat.getActionView(mnuSearch); 
    searchView.setGravity(Gravity.LEFT); 
    searchView.setIconifiedByDefault(false); 
    searchView.setQueryHint(getString(R.string.search)); 
    searchView.requestFocus(); 
    return true; 
} 
+0

非常に良い質問バディ 私はあなたがそれをこのように行います、あなたはこの –

答えて

2

私はむしろレイアウトであなたのSearchViewを定義し、それを左揃えにし、そうでない場合は、設定することができ、すでに来てこう

View v = findViewById(R.id.your_search_view); 
getSupportActionBar().setCustomView(v); 

を呼ぶだろうそのLayoutParams

ViewGroupとして機能するため、ToolbarをAppCompatで使用している方が簡単です。

<android.support.v7.widget.Toolbar 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     xmlns:abc="http://schemas.android.com/apk/res-auto" 
     android:id="@+id/toolbar" 
     android:layout_height="?attr/actionBarSize" 
     android:layout_width="match_parent"> 

    <your.SearchView /> 
     // here you have control over layout_gravity 

</android.support.v7.widget.Toolbar> 
+0

感謝を試すことができ、画像表示 を使用してアイコンを設定することができ、あなたのXMLのツールバーのボディに推測します。簡単な修正を望んでいたのですが、これは簡単です:-) –

関連する問題