2014-12-16 3 views
2

Я хочу показать 3 значка на панели инструментов, когда я выбираю один вариант в меню и только показывает пространство для значков, но не значки, я пробовал много движений в xml, но ничего не работает, любая помощь пожалуйста, спасибо в консультации.Показать иконки в панели инструментов Android

Адрес электронной почты: XML.

<menu 
xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
xmlns:yourapp="http://schemas.android.com/apk/res-auto" > 
    <item android:id="@+id/bno_marcadores" 
     android:visible="false" 
     yourapp:showAsAction="always" 
     android:title="@string/disable_draw" 
     android:showAsAction="always"> 
    </item> 
    <item android:id="@+id/escribir_negro" 
     android:visible="false" 
     yourapp:icon="@drawable/escribirnegro" 
     yourapp:showAsAction="always" 
     android:showAsAction="always"> 
    </item> 
    <item android:id="@+id/escribir_blanco" 
     android:visible="false" 
     yourapp:showAsAction="always" 
     yourapp:icon="@drawable/escribirblanco" 
     android:showAsAction="always"> 
    </item> 
    <item android:id="@+id/escribir_azul" 
     android:visible="false" 
     yourapp:showAsAction="always" 
     yourapp:icon="@drawable/escribirazul" 
     android:showAsAction="always"> 
    </item> 
    <group android:id="@+id/options_in_book" 
      android:visible="false"> 
     <item android:id="@+id/inserttext" 
       android:title="@string/inserttext" 
       android:titleCondensed = " " 
       yourapp:icon="@drawable/ic_pluma" 
       yourapp:showAsAction="collapseActionView"> 
      </item> 
     <item android:id="@+id/pluma_az" 
       android:title="@string/pluma_az" 
       android:titleCondensed = " " 
       yourapp:icon="@drawable/ic_pluma" 
       yourapp:showAsAction="collapseActionView"> 
      </item> 
      <item android:id="@+id/Marcador_ama" 
       android:title="@string/Marcador_ama" 
       android:titleCondensed = " " 
       yourapp:icon="@drawable/ic_plumon_ama" 
       yourapp:showAsAction="collapseActionView"> 
      </item> 
      <item android:id="@+id/Marcador_verde" 
       android:title="@string/Marcador_verde" 
       android:titleCondensed = " " 
       yourapp:icon="@drawable/ic_plumon_ver" 
       yourapp:showAsAction="collapseActionView"> 
      </item> 
      <item android:id="@+id/borrador" 
       android:title="@string/borrador" 
       android:titleCondensed = " " 
       yourapp:icon="@drawable/ic_borrador" 
       yourapp:showAsAction="collapseActionView"> 
      </item> 
    </group> 
    <item android:id="@+id/reload_menu" 
      android:visible="false" 
      android:title="@string/reload_menu" 
      android:icon="@android:drawable/ic_popup_sync" 
      yourapp:showAsAction="ifRoom|collapseActionView"> 
    </item> 

Here is the image with the option selected,

вставки текста является вариантом и escribir_negro, escirbir_azul, escribir_blanco являются элементы я хочу показать.

@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     switch (item.getItemId()) { 
     case android.R.id.home: 
      if(drawerLayout.isDrawerOpen(GravityCompat.START)){ 
       drawerLayout.closeDrawers();//(myindice); 
      }else 
       finish(); 
      break; 
     case R.id.Marcador_ama: 
     case R.id.Marcador_verde: 
     case R.id.pluma_az: 
      Toastme_please("Navegación deshabilitada"); 
      Integer color = (item.getItemId() == R.id.Marcador_ama ? 2 : (item 
        .getItemId() == R.id.Marcador_verde ? 1 : 0)); 
      for (Integer i = 0; i < 2; i++) { 
       mViews[i].color = color; 
      } 
      /*dis_en_controls(false);*/ 
      book_menu.findItem(R.id.bno_marcadores).setVisible(true); 
      dibujar = true; 
      borrar = false; 
      escribir =false; 
      book_menu.findItem(R.id.escribir_negro).setVisible(false); 
      book_menu.findItem(R.id.escribir_blanco).setVisible(false); 
      book_menu.findItem(R.id.escribir_azul).setVisible(false); 
      break; 
     case R.id.borrador: 
      Toastme_please("Navegación deshabilitada"); 
      book_menu.findItem(R.id.bno_marcadores).setVisible(true); 
      dibujar = false; 
      borrar = true; 
      escribir =false; 
      book_menu.findItem(R.id.escribir_negro).setVisible(false); 
      book_menu.findItem(R.id.escribir_blanco).setVisible(false); 
      book_menu.findItem(R.id.escribir_azul).setVisible(false); 

      //dis_en_controls(false); 
      break; 
     case R.id.bno_marcadores: 
      Toastme_please("Navegación habilitada"); 
      dibujar = false; 
      borrar = false; 
      escribir = false; 
      book_menu.findItem(R.id.escribir_negro).setVisible(false); 
      book_menu.findItem(R.id.escribir_blanco).setVisible(false); 
      book_menu.findItem(R.id.escribir_azul).setVisible(false); 
      //dis_en_controls(true); 
      item.setVisible(false); 
      break; 
     case R.id.inserttext: 
      Toastme_please("Navegación habilitada"); 
      escribir = true; 
      dibujar = false; 
      borrar = false; 
      book_menu.findItem(R.id.bno_marcadores).setVisible(true); 
      book_menu.findItem(R.id.escribir_negro).setVisible(true); 
      book_menu.findItem(R.id.escribir_blanco).setVisible(true); 
      book_menu.findItem(R.id.escribir_azul).setVisible(true); 
     case R.id.escribir_negro: 
      for (Integer i = 0; i < 2; i++) { 
       mViews[i].color = 3; 
      } 
      break; 
     case R.id.escribir_blanco: 
      for (Integer i = 0; i < 2; i++) { 
       mViews[i].color = 4; 
      } 
      break; 
     case R.id.escribir_azul: 
      for (Integer i = 0; i < 2; i++) { 
       mViews[i].color = 5; 
      } 
       break; 
     default: 
      break; 
     } 

     return super.onOptionsItemSelected(item); 
    } 

ответ

3

Вам нужно изменить YourApp: значок андроида: значок

изменить это:

<item android:id="@+id/escribir_azul" 
    android:visible="false" 
    yourapp:showAsAction="always" 
    yourapp:icon="@drawable/escribirazul" 
    android:showAsAction="always"> 
</item> 

для этого:

<item android:id="@+id/escribir_azul" 
    android:visible="false" 
    yourapp:showAsAction="always" 
    android:icon="@drawable/escribirazul"> 
</item> 
0

Вместо того, чтобы пытаться переключаться на идентификаторы и находить правильный, а затем делать то, что вы можете просто использовать входящий элемент.

item.setVisible(true); 

или в случае группы, где при нажатии кнопки на группы, которую дети, чтобы быть видимыми вы можете сделать это:

Menu menu = new Menu(); // Can also be inflated menu from XML 
public void onGroupItemClick(MenuItem item) { 
    menu.setGroupVisible(item.getGroupId(), true); 
} 

Я предположил бы, что это позволило бы упростить вещи совсем немного для тебя.

http://developer.android.com/guide/topics/resources/menu-resource.html

+0

Спасибо за ваш ответ, программно я есть все «предметы», видимые, когда я помещаю их в заголовок, появляется название, но когда я ставлю только t он значки он не показывает. – JDeLeon92

+0

Можете ли вы, пожалуйста, показать весь статус statememt? –

+0

Конечно, проверьте мой вопрос. – JDeLeon92

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