2013-09-10 3 views
1

Я использую этот пример http://developer.android.com/guide/topics/ui/actionbar.html#ActionProvider Но, я хочу, если его возможное изменение приведет к изменению текста «увидеть все» для другого текста, например, в моем приложении галереи, испанский «ver todo», если возможно, изменить?ActionProvider. Измените текст в подменю и узнайте, когда его нажали

И .. если возможно знаете, когда кнопка совместного доступа в панели действий (в моем случае actionbarsherlock) нажимают?

Я вижу «Однако, если поставщик действий предоставляет подменю действий, то ваша деятельность не получает вызов onOptionsItemSelected(), когда пользователь открывает список или выбирает одно из элементов подменю« but..no other способ узнать это? Я хочу, чтобы, когда пользователь нажал эту кнопку, сделайте одно дополнение, также покажите список приложений для совместного использования.

public boolean onCreateOptionsMenu(Menu menu) 
{  
     MenuInflater inflater= getSupportMenuInflater(); 
     inflater.inflate(R.menu.menu_resultados, menu); 



     MenuItem item = menu.findItem(R.id.menu_compartir); 

     mShareActionProvider =(com.actionbarsherlock.widget.ShareActionProvider) item.getActionProvider(); 
     mShareActionProvider.setShareIntent(createShareIntent()); 

     return true; 
    } 


private Intent createShareIntent() 
{ 
     Intent shareIntent = new Intent(Intent.ACTION_SEND); 
     shareIntent.setType("image/jpeg"); 
     shareIntent.putExtra(Intent.EXTRA_EMAIL,"TestText"); 
     shareIntent.putExtra(Intent.EXTRA_SUBJECT, "TestSubject"); 


     return shareIntent; 
} 

ответ

0

Вы можете изменить строку в проекте ActionBarSherlock «s, изменяя линии в res/values/abs__strings, или вы можете создать папку res/values-es, копировать там abs__strings и редактировать строки там. Таким образом, в вашем коде будут использоваться английская и испанская строки, в зависимости от языка устройства. Строка, которую вы ищете в abs__strings, называется abs__activity_chooser_view_see_all.

Просто подскажите, попробуйте использовать функцию поиска в Eclipse для изменения этой строки в следующий раз. Я нашел это, выполнив поиск «Просмотреть все ...».

О знании, когда кнопка была нажата, я не мог понять это. Я просто проверял, что onOptionsItemSelected() не работает, так же, как вы сказали ...

0

Попробуйте установить setOnMenuItemClickListener напр:

MenuItem item = menu.findItem(R.id.menu_compartir); 
     item.setOnMenuItemClickListener(new OnMenuItemClickListener() { 

      @Override 
      public boolean onMenuItemClick(MenuItem arg0) { 
       // TODO Auto-generated method stub 
       return false; 
      } 
     }); 

 Смежные вопросы

  • Нет связанных вопросов^_^