我有一个带有searchview的操作栏但是我想将它对齐到左边,例如在地图应用中,而不是右边。我该怎么做?
答案 0 :(得分:9)
你可以这样做 试试这个肯定会有所帮助:
ActionBar action=getActionBar();
action.setDisplayShowCustomEnabled(true);
action.setDisplayShowHomeEnabled(false);
action.setDisplayShowTitleEnabled(false);
RelativeLayout relative=new RelativeLayout(getApplicationContext());
relative.addView(new SearchView(getApplicationContext()));
action.setCustomView(relative);
不要忘记在搜索视图中添加布局参数,以便它可以在右侧对齐。 如果有任何问题,请告诉我。 谢谢
然后会显示在操作栏的右侧。 还
答案 1 :(得分:2)
不使用getApplicationContext(),我发现了一个问题
RelativeLayout relative = new RelativeLayout(mActionBar.getThemedContext());
mSearchView = new SearchView(mActionBar.getThemedContext());
mSearchView.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
mSearchView.setIconifiedByDefault(false);
mSearchView.setGravity(Gravity.LEFT);
relative.addView(mSearchView);
mActionBar.setDisplayShowCustomEnabled(true);
mActionBar.setCustomView(relative);