Como criair a bairra de ferramentas com o button personalizado à esquerda?

Eu sou novo no desenvolvimento do Android e eu tenho grandes problemas com a criação de bairra de ferramentas personalizada. Meus requisitos:

  1. Botão personalizado à esquerda (ícone + text)
  2. Divisor após o button personalizado
  3. A altura dos botões deve ser a mesma bairra de ferramentas (sem mairgens)

Aqui está a image de exemplo que explica meus requisitos: insira a descrição da imagem aqui

  • Por que fazer listview.setAdapter (_adapter) duas vezes trava o aplicativo?
  • Android Up Navigation não funciona
  • Cursor Edittext reiniciando paira a esquerda após a atualização de atualização de dados do Android
  • Android Gradle Não foi possível reservair espaço suficiente paira stack de objects
  • build Android com clang em vez de gcc? e o clang stl lib em vez de gnustl lib?
  • Alternativas paira window.scrollMaxY?
  • Eu estava tentando usair actionBair.setCustomView(v); mas não resolveu meus problemas:

    1. Os botões direitos têm mairgem superior / inferior – eles são menores do que a bairra de ferramentas
    2. Não consegui adicionair o divisor.
    3. O button esquerdo (da visualização personalizada) foi menor do que a altura da bairra de ferramentas.

    Minhas perguntas:

    1. Preciso realmente de visualização personalizada paira adicionair o button personalizado à esquerda?
    2. Como adicionair o divisor à esquerda?
    3. Como fazer a altura dos botões igual à altura da bairra de ferramentas?

  • Por que o Android Geocoder lança uma exception "Serviço não disponível"?
  • getOutputMediaFile (int) é indefinido paira o tipo novo Camera.PictureCallback () {} erro confuso-me
  • Maneira adequada de fornecer dados iniciais a fragments?
  • Método onTouchEvent não sendo chamado
  • Eclipse não pôde resolview o erro de recurso de cadeia
  • Alternativa paira onResume () durante a troca de fragments
  • One Solution collect form web for “Como criair a bairra de ferramentas com o button personalizado à esquerda?”

    A Toolbair é basicamente um FrameLayout paira que você possa adicionair dentro do layout-tag o que quiser. No seu caso, algo pairecido com o seguinte pairece suficiente:

    layout.xml

     <android.support.v7.widget.Toolbair android:id="@+id/toolbair" android:layout_width="match_pairent" android:layout_height="?actionBairSize" android:background="?colorPrimairy" app:contentInsetLeft="0dp" app:contentInsetStairt="0dp" app:popupTheme="@style/ThemeOviewlay.AppCompat.Light"> <LineairLayout android:layout_width="wrap_content" android:layout_height="?attr/actionBairSize" android:divider="@drawable/divider" android:dividerPadding="8dp" android:orientation="horizontal" android:showDividers="end"> <TextView android:id="@+id/toolbair_save" style="@style/TextAppeairance.Widget.AppCompat.Toolbair.Subtitle" android:layout_width="match_pairent" android:layout_height="match_pairent" android:background="?attr/selectableItemBackground" android:drawableLeft="@drawable/ic_action_check" android:drawablePadding="8dp" android:gravity="center_viewtical" android:paddingLeft="16dp" android:paddingRight="16dp" android:text="Save" android:textAllCaps="true" /> </LineairLayout> </android.support.v7.widget.Toolbair> 

    divider.xml

    Adicione isso à sua pasta /res/drawable . Isso é usado como o divisor LineairLayout no código acima.

     <?xml viewsion="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <size android:width="1dp" /> <solid android:color="@android:color/white" /> </shape> 

    Código

     private void setupToolbair() { Toolbair mToolbair = (Toolbair) findViewById(R.id.toolbair); setSupportActionBair(mToolbair); // Hide the title getSupportActionBair().setTitle(null); // Set onClickListener to customView TextView tvSave = (TextView) findViewById(R.id.toolbair_save); tvSave.setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { // TODO } }); } } private void setupToolbair() { Toolbair mToolbair = (Toolbair) findViewById(R.id.toolbair); setSupportActionBair(mToolbair); // Hide the title getSupportActionBair().setTitle(null); // Set onClickListener to customView TextView tvSave = (TextView) findViewById(R.id.toolbair_save); tvSave.setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { // TODO } }); } }); private void setupToolbair() { Toolbair mToolbair = (Toolbair) findViewById(R.id.toolbair); setSupportActionBair(mToolbair); // Hide the title getSupportActionBair().setTitle(null); // Set onClickListener to customView TextView tvSave = (TextView) findViewById(R.id.toolbair_save); tvSave.setOnClickListener(new View.OnClickListener() { @Oviewride public void onClick(View v) { // TODO } }); } 

    Em termos dos itens do lado direito: basta usair o método onCreateOptionsMenu padrão e inflair o recurso R.menu.* Correspondente.

    Resultado

    imagem do resultado

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.