我正在工具栏上创建一个上下文操作栏。我的工具栏最小高度设置为100dp。 首先,如果我设置
actionmode = MyActivity.this.startActionMode(new mycallback());
并且工具栏的高度为wrap_content,工具栏覆盖有上下文操作栏。但如果高度为100 dp,则上下文栏仅覆盖工具栏的一部分。 如何设置上下文动作栏的高度。 如果我试着设置
actionmode.setCustomView(v);
并且View v类似于Linearlayout,高度为100dp,存在错误。
如果我使用
actionmode = toolbar.startActionMode(new mycallback());
正如某些stackoverflow线程中所建议的,然后我得到一个放在工具栏上方而不是它上面的CAB。 请更新如何更改CAB的大小以完全覆盖工具栏。 此外,CAB上的ShareActionProvider不显示以下操作的任何应用程序,即使在没有CAB的情况下使用,ShareActionProvider也显示没有应用程序。为什么ShareActionProvider的此行为适用于CAB。我错过了要设置的东西。
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
// invalidateOptionsMenu();
mode.getMenuInflater().inflate(R.menu.myprovider, menu);
MenuItem mi=menu.findItem(R.id.pprovider);
sp=new ShareActionProvider(Material_Example.this);
MenuItemCompat.setActionProvider(mi,sp);
if(sp!=null) {
Toast.makeText(Material_Example.this,"it is not null",Toast.LENGTH_LONG).show();
sp.setShareHistoryFileName(ShareActionProvider.DEFAULT_SHARE_HISTORY_FILE_NAME);
sp.setShareIntent(getmyintent());
}
return true;
}
private Intent getmyintent() {
Intent ii=new Intent(Intent.ACTION_SEND);
ii.setType("image/*");
return ii;
}
感谢
答案 0 :(得分:1)
添加
<item name="windowActionModeOverlay">true</item>
到您的主题
答案 1 :(得分:0)
我想我找到了答案。如果在styles.xml
中的主题中添加以下行真
然后CAB将覆盖工具栏。