我想在我的Android应用程序中的一个`onCreateOptionsMenu(菜单菜单)下添加多个活动,我已经添加了两个活动,但它们工作正常,但第三个活动不起作用,以下是我的代码
Double total = 5;
Double a,b,c,tot;
a = total*0.80;
b = total*0.10;
c = total*0.10;
tot = a+b+c;
Int convert = Convert.ToInt32(tot)
menu_main.xml
onCreateOptionsMenu(Menu menu)
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public final boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_item_share:
shareURL();
}
if(item.getItemId() == R.id.menu_item_refresh){
mWebView.reload();
return true;
}
if(item.getItemId() == R.id.share_this_app)
mShareActionProvider.setShareIntent(getDefaultShareIntent());
return super.onOptionsItemSelected(item);
}
private void shareURL() {
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, mWebView.getUrl());
startActivity(Intent.createChooser(shareIntent, "Share This Website!"));
shareIntent.setPackage("com.whatsapp");
}
/** Returns a share intent */
private Intent getDefaultShareIntent(){
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_SUBJECT, "download the app");
intent.putExtra(Intent.EXTRA_TEXT," play.google.com ");
return intent;
}
从上面开始,menu_item_share和menu_item_refresh正在运行,但分享此应用无效。
答案 0 :(得分:0)
可能你错过了这一行 mShareActionProvider.setShareIntent(getDefaultShareIntent()); 下面的返回真实陈述。您可以简单地按照干净的结构来完成任务。
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_item_share: {
shareURL();
break; //or, return true;
}
case R.id.menu_item_refresh: {
mWebView.reload();
break; //or, return true;
}
case R.id.share_this_app: {
mShareActionProvider.setShareIntent(getDefaultShareIntent());
break; //or, return true;
}
return super.onOptionsItemSelected(item);
}
答案 1 :(得分:0)
嘿,我认为这会有所帮助......
你写
的机器人:showAsAction = “从不”强>
因此,当在菜单图标(工具栏中的三个点)中放置一个图标时会产生错误。
因此,为此属性设置值“always”或“ifRoom”。
希望这会奏效: - )