Ajuda com TabActivity personalizada[Android]

6 respostas
R

Bom dia, Pessoal

Gostaria de saber como faço para trocar a imagem e cor de fundo da tab quando clicar na mesma.

Dentro da minha pasta drawable criei um arquivo tab_materia.xml

com o seguinte codigo.

tab_materia.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- Tab Ativa -->
    <item        
        android:state_selected="true"
        android:state_focused="false"
        android:state_pressed="false"        
        android:drawable="@drawable/ico_materias"
        />
    
    <!-- Tab Inativa -->
	<item 
	    android:state_selected="false"
	    android:state_focused="false"
	    android:state_pressed="false"
	    android:drawable="@drawable/ico_arrow"/>
	
	<!-- Tab Pressionada -->
	<item 
	    android:state_pressed="true"
	    android:drawable="@drawable/ico_materias"/>
	
	<!-- Tab Selecionada -->
	<item 
	    android:state_pressed="true"
	    android:drawable="@drawable/ico_materias"/>
	    
</selector>

E na classe onde eu add minhas tab´s fiz a seguinte chamada.

Tabs.java

protected void onCreate(Bundle savedInstanceState) {
		// TODO Auto-generated method stub
		super.onCreate(savedInstanceState);
		setContentView(R.layout.tabs);
		
		
		
		Resources res = getResources();
		tabHost = (TabHost)findViewById(R.id.tabhost);
		tabHost.setup(this.getLocalActivityManager());
		TabHost.TabSpec spec;
		Intent intent;
		
		//Adiciona a tab #1
		intent = new Intent().setClass(this, ListarMaterias.class);
		spec = tabHost.newTabSpec("0").setIndicator("Matérias",res.getDrawable(R.drawable.tab_materia)).setContent(intent);		
		tabHost.addTab(spec);

Alguém pode dar uma ajuda????

6 Respostas

R

Pessoal,

Como faço para definir espaço entre uma aba e outra???

R

Ninguém?

jonathan_Coelho

da Uma olhada nesse link… tem tudo que vc precisa aí…

http://joshclemm.com/blog/?p=136

R

Opa, jonathan!!!

Tinha visto já esse link…mesmo assim mto obrigado nesse link tem realmente quase tudo oq preciso…rs

Estou com o seguinte problema.

quando peço para arredondar as bordas laterais superiores da tab, ele tira o espaço que existe entre elas, as duas ficam grudadas.

olha meu arquivo shape

<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:thickness="20dp" > <gradient android:startColor="#007FFF" android:centerColor="#007FFF" android:endColor="#007FFF" /> <corners android:topLeftRadius="10dp" android:topRightRadius="10dp" /> </shape>

Sabe como resolver isso?
Vlw :lol:

R

jonatham…

Vc conseguiu fazer funcionar o ex. desse link???

Criei um projeto a parte para fazer as alterações nele e nao consigo fazer funcionar…

pode da uma força?

Vlw!

jonathan_Coelho

Rotiv:
jonatham…

Vc conseguiu fazer funcionar o ex. desse link???

Criei um projeto a parte para fazer as alterações nele e nao consigo fazer funcionar…

pode da uma força?

Vlw!

Sim já usei esse exemplo como base pra algo que eu queria. Estou no trabalho agora e não posso testar pra você mas nessa pagina tem o link pra você baixar o projeto completo.
Abre ele no seu eclipse e vai mudando conforme sua necessidade.

Criado 4 de junho de 2012
Ultima resposta 5 de jun. de 2012
Respostas 6
Participantes 2