使用for语句在上下文菜单中添加字符串

时间:2013-09-14 15:20:39

标签: android android-layout android-listview android-context android-contextmenu

您好我正在尝试在上下文菜单中输入字符串(类价格)。但我的代码没有像我预期的那样返回。有人可以帮我解决这个问题吗?

public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
         super.onCreateContextMenu(menu, v, menuInfo);  
         menu.setHeaderTitle(getString(R.string.display_title));  
         //menu.add(0, v.getId(), 0, getString(R.string.display_schedule_ticket_prices)); 

         StringBuilder pricesAlert = new StringBuilder("");
            //int i = 0;
         for(float price: rates.getPrices()){
             for (int j = 0; j < 3; j++){
            pricesAlert.append(getString(R.string.display_schedule_train_class) + j + getString(R.string.display_schedule_train_rs) +  price +"\r\n");
            menu.add(pricesAlert);
             }
         } 
     }

编辑:

我使用上面的代码得到了类似的结果。 enter image description here

但我希望输出如下: enter image description here

1 个答案:

答案 0 :(得分:0)

这是一个片段

 @Override  
public void onCreateContextMenu(ContextMenu menu, View v,ContextMenuInfo menuInfo) {  
super.onCreateContextMenu(menu, v, menuInfo);  
menu.setHeaderTitle("Context Menu");  
menu.add(0, v.getId(), 0, "Action 1");  
menu.add(0, v.getId(), 0, "Action 2");  
}  

 @Override  
 public boolean onContextItemSelected(MenuItem item) {  
    if(item.getTitle()=="Action 1"){function1(item.getItemId());}  
else if(item.getTitle()=="Action 2"){function2(item.getItemId());}  
else {return false;}  
return true;  
 }  

这是你想做的吗?参考http://www.stealthcopter.com/blog/2010/04/android-context-menu-example-on-long-press-gridview/

您是否在上下文菜单中添加了操作?