Estou tentando fazer algumas coisas na ActionBar no Android.
Eu já adicionei novos itens no lado direito da barra de ação.
Como posso alterar o lado esquerdo da barra de ação? Quero alterar o ícone e o texto e adicionar um "Botão Voltar" na barra de ação para as outras telas
android
android-layout
android-actionbar
Allan Ramírez
fonte
fonte
getSupportActionBar
vez degetActionBar
.getActionBar().setHomeButtonEnabled(true)
usa o nível de API 14 ou até, se você quiser apenas a funcionalidade do botão de volta em mais velho, bem como APIs mais recentes você só precisagetActionBar().setDisplayHomeAsUpEnabled(true)
supportActionBar?.setDisplayShowTitleEnabled(true)
entãosupportActionBar?.title = "your title"
. E isso deve ser feito dentroonResume
, não dentroonCreate
, ao criar a atividade comstartActivity
.Para tornar um único ícone utilizável por todas as suas barras de ação, você pode fazer isso no seu manifesto do Android.
fonte
pre-loads
o ícone programaticamente é lento!Você só precisa adicionar essas 3 linhas de código. Substitua o ícone pelo seu próprio ícone. Se você deseja gerar ícones, use este
fonte
Nas diretrizes de design de material do Android 5.0, desencorajar o uso de ícone na actionBar
para habilitá-lo, adicione o seguinte código
crédito vai para o autor deste artigo
fonte
Se você deseja alterar o título da barra de ação, basta fornecer o seguinte código de 1 linha no onCreate () da sua atividade
fonte
Você pode alterar o ícone adicionando qualquer ícone às suas respectivas pastas desenháveis e alterando esta linha no seu arquivo AndroidManifest.xml:
para corresponder ao nome do seu ícone. Ou coloque seu ícone como ic_launcher, se eles forem o mesmo ícone. Quanto ao que diz, adicione ou altere as strings correspondentes às do seu arquivo res / values / strings.xml. Em seguida, novamente no seu arquivo AndroidManifest.xml, altere esta linha:
para qualquer que seja a string que você tem na deles. Você precisará fazer isso para o aplicativo como um todo e para as atividades que desejar, mas as linhas são as mesmas.
Espero que isto ajude.
fonte
android:icon
na tag de atividade?fonte
Para isso, você pode fazer isso de duas maneiras: XML ou Java. Veja aqui: Como alterar o texto na barra de ação
Assim:
XML:
Java:
fonte
setTitle(CharSequence text)
ousetTitle(int titleRes)
. Não use arequestWindowFeature(Window.FEATURE_CUSTOM_TITLE)
menos que esteja planejando substituir a barra de título inteira por sua própria exibição personalizada.Para o título definido :
Para definir o ícone :
fonte
Eu usei a seguinte chamada dentro
onNavigationItemSelected
:fonte
Adicione o código abaixo dentro de uma função onCreate em sua atividade.
fonte
Este trabalho para mim:
fonte
O título da barra de ação, por padrão, usa o rótulo da atividade atual, mas você também pode configurá-lo através de programação
ActionBar.setTitle()
.Para implementar a funcionalidade do botão "Voltar" (mais precisamente, "Para cima") de que você está falando, leia a seção "Usando o ícone do aplicativo para navegação" no guia do desenvolvedor da Barra de ação .
Por fim, para alterar o ícone, o guia também o cobre. Em resumo, a barra de ação exibirá a imagem fornecida no
android:icon
manifestoapplication
ouactivity
elemento, se houver algum. A prática típica é criar um ícone de aplicativo (em todas as várias densidades necessárias) nomeadoic_launcher.png
e colocá-lo em seusdrawable-*
diretórios.fonte
Recebi um
non-static method setTitle(CharSequence) cannot be referenced from a static context
erro porque useisetTitle()
na classe estática PlaceholderFragment. Eu resolvi usandogetActivity().getActionBar().setTitle("new title");
fonte
Vá para o manifesto em qual atividade específica deseja alterar Barra de ação Nome do título e escreva android: label = "Title name"
fonte
Vá para o arquivo AndroidManifest.xml . Encontre a
<application>
tag Lá você pode ver um atributoAgora vá para res> values> strings.xml
Mudar o
para
Exemplo
AndroidManifest.xml
strings.xml
fonte
Você também pode fazer o seguinte:
fonte