Tecnologia do Blogger.
RSS

Re: [androidbrasil-dev] RoundedImageView na Toolbar

Legal @Gink,

eu tinha ficado na dúvida se o que precisava era somente a RoundedImageView ou precisava também como inserir dentro da toolbar. 
Bom que encontrou a maneira de resolver o seu problema.

Uma pergunta. Você usou um componente customizado (CircleImageView). Porque? Porque preferiu usar um componente ao invés de somente usar um shape.

Estou questionando pois procurei critérios pra decidir usar um ou outro e não encontrei nada relevante.

Abraço

Em 1 de junho de 2015 21:08, Gink Labrev <gink.labrev@gmail.com> escreveu:
Só há um porém.
O texto (TextView) fica ligeiramente diferente do padrão da Toolbar (talvez um pouco imperceptível, mas fica).
Entretanto, esse foi o máximo que consegui aproximar ao estilo da Toolbar através de pesquisa no Google e ajustes.

Se alguém souber como obter o xml padrão de uma Toolbar e ver como está declarado o TextView do título, seria bom.

Em 1 de junho de 2015 21:05, Gink Labrev <gink.labrev@gmail.com> escreveu:
Fala galera,

Então fiz aqui.

@Alexandre,
Sim, o que vc passou funciona. Mas minha dúvida é como inserir isto em uma Toolbar.

@Rudson,
Se fizer como falou, funciona. Mas a imagem fica depois do título e não antes como na imagem do primeiro email (e como é padrão).

Pesquisando, vi que a Toolbar é um ViewGroup como qualquer outro. A partir daí, foi fácil inferir a solução.

No código, faz assim: getSupportActionBar().setDisplayShowTitleEnabled(false);

E no xml, tipo isso:

<android.support.v7.widget.Toolbar
     // elementos da Toolbar >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:orientation="horizontal">

        <de.hdodenhof.circleimageview.CircleImageView
            xmlns:app="http://schemas.android.com/apk/res-auto"
            android:id="@+id/toolbar_icon"
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:layout_margin="3dp"
            android:src="@drawable/icon"
            app:border_width="1dp"
            app:border_color="#FF000000"
            android:gravity="center_vertical"/>

            <TextView
            android:layout_width="wrap_content"
            android:layout_height="?actionBarSize"
            android:id="@+id/toolbar_title"
            android:textSize="20sp"
            android:gravity="center_vertical"
            android:textColor="@color/white"
            android:textStyle="bold"
            android:layout_marginLeft="10dp"
            android:layout_marginStart="10dp"
            android:layout_marginRight="10dp"
            android:layout_marginEnd="10dp"
            android:ellipsize="end"
            android:singleLine="true" />

    </LinearLayout>

</android.support.v7.widget.Toolbar>

Em 1 de junho de 2015 11:39, Gink Labrev <gink.labrev@gmail.com> escreveu:
Não esqueci não.
Tive uns atrasos no projeto mas devo testar isso hoje ou amanhã.

Em 28 de maio de 2015 09:17, Alexandre M. Carvalho Petraglia <alexmcarv@gmail.com> escreveu:
Depois nos informe a solução que você encontrou/adotou. 

Obrigado,

Alexandre

Em 27 de maio de 2015 14:43, Alexandre M. Carvalho Petraglia <alexmcarv@gmail.com> escreveu:
Eu fiz um "RoundedImage" arredondando o background do layout com shape. Dentro do layout coloquei o ImageView.
Não usei na toolbar, mas na tela mesmo. A imagem e a cor de fundo eu coloco dinamicamente pois dependo dos valores.

No meu caso, foi um indicador em legenda de gráfico. Como na imagem no e-mail.

Encontrei várias pessoas herdando do ImageView e criando o próprio componente, sobre-escrevendo o onDraw se não me engano. Mas não tenho detalhes.

1 - Criei o shape:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">

<solid android:color="@android:color/transparent"/>

<corners
android:radius="40dp"/>

</shape>

2 - Coloquei um imageView dentro de um layout. E coloquei o background do layout como sendo o shape
<RelativeLayout
android:id="@+id/imagem_indicador_cor"
android:layout_width="36dp"
android:layout_height="36dp"
android:gravity="center"
android:background="@drawable/fundo_redondo">
<ImageView
android:id="@+id/imagem_indicador_valor"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="centerInside"/>
</RelativeLayout>
O resultado foi esse:
 

Espero ter ajudado, ou ao menos dado uma luz.
Abraço
Alexandre

2015-05-27 14:15 GMT-03:00 Rudson Lima <rudsonlive@gmail.com>:

Olha se isso da certo pra ti.

View view = getLayoutInflater().inflate("teu layout com a imagem", new RelativeLayout(this), false);
actionBar.setCustomView(view, layout);

2015-05-27 14:06 GMT-03:00 Gink Labrev <gink.labrev@gmail.com>:

Ninguém ?

Em 26 de maio de 2015 12:08, Gink Labrev <gink.labrev@gmail.com> escreveu:
Alguém sabe customizar o logo da toolbar, tipo o icone abaixo ?
Ao invés de exibir um ImageView, gostaria de exibir uma RoundedImageView.



--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Rudson Lima ( live-O ) Desenvolvedor Android
Contato +55 85 87050560 - Fortaleza-ce
Social facebook | google+ | linkedin

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Android Brasil - Dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to androidbrasil-dev+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário