我有一个活动,其中包含不同团队的徽章,当单击一个时,会显示一个上下文菜单,可以在浏览器上打开团队维基百科页面。我设法根据ImageView创建一个不同的上下文菜单,但不知道我将如何通过链接。有什么帮助吗?
Context_menu.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/link"
android:title="Open Wikipedia Page"
/>
</menu>
团队班
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo){
super.onCreateContextMenu(menu,v,menuInfo);
MenuInflater inflater = getMenuInflater();
switch (v.getId()){
case R.id.atalanta:
menu.setHeaderTitle("Atalanta");
inflater.inflate(R.menu.context_menu,menu);
break;
case R.id.bologna:
menu.setHeaderTitle("Bologna");
inflater.inflate(R.menu.context_menu,menu);
break;
case R.id.cagliari:
menu.setHeaderTitle("Cagliari");
inflater.inflate(R.menu.context_menu,menu);
break;
case R.id.chievo:
menu.setHeaderTitle("Chievo");
inflater.inflate(R.menu.context_menu,menu);
break;
}
答案 0 :(得分:0)
如果您能够根据代码在switch
块中的位置设置上下文菜单的标题标题,您还可以设置String
变量到链接。在switch
之后,您可以创建一个新的Intent
,将链接传递给它,然后启动它。所有这些应如下所示:
String link = "";
//...
switch (v.getId()) {
case R.id.atlanta:
menu.setHeaderTitle("Atalanta");
link = "https://whateveryouwant.com"
inflater.inflate(R.menu.context_menu,menu);
break;
//do this with every case
}
//...
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(link));
startActivity(i);