Xamarin Android -   Criando  Action Bar Tabs - I  

 Este artigo mostrar como podemos criar Actionbar Tabs em uma aplicação Xamarin Android usando o Visual Studio com Xamarin e a linguagem C#.

Para criar ActionBar tabs em uma aplicação Xamarin Android é muito simples. Basta seguir o tutorial.

Recursos usados:

Nota: Baixe e use a versão Community 2017 do VS ela é grátis e é equivalente a versão Professional.

Criando o projeto no VS Community 2017

Abra o VS 2017 Community e clique em New Project;

Selecione a linguagem Visual C# e o template Android -> Blank App(Android)

Informe o nome um nome adequado ao seu projeto, eu vou usar o nome Droid_Tabs, e clique no botão OK;

Abra o arquivo Main.axml na pasta Resources/layout no modo Source e a seguir inclua o código abaixo:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/holo_orange_dark"
    android:minWidth="25px"
    android:minHeight="25px">
    <TextView
        android:text="Medium Text"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/textView1"
        android:gravity="center" />
</LinearLayout>

Este código apenas inclui um controle TextView usando o layout LinearLayout.

Agora podemos iniciar a implementação do código para exibir criar as tabs o arquivo MainActivity.cs.

Vamos começar definindo os namespaces usados no projeto:

using Android.App;
using Android.Widget;
using Android.OS;
using System;

A seguir a declaração da Activity como sendo a principal e a definição do ícone da aplicação:

[Activity(Label = "Droid_Tabs", MainLauncher = true, Icon = "@drawable/icon")]

Antes de implementar o método OnCreate() vamos definir as variáveis que iremos usar :
TextView textView;

No método OnCreate() vamos incluir o código abaixo:
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);
            // Set our view from the "main" layout resource
            SetContentView (Resource.Layout.Main);
            textView = FindViewById<TextView>(Resource.Id.textView1);
            ActionBar.NavigationMode = ActionBarNavigationMode.Tabs;
            // Adiciona as tabs no Action Bar  
            AddTab("Tab Um");
            AddTab("Tab Dois");
        }

Para criar guias na Barra de Ação, primeiro precisamos definir sua propriedade NavigationMode para suportar guias :

   ActionBar.NavigationMode = ActionBarNavigationMode.Tabs;

Depois chamamos o método AddTab() para criar as guias.

O código deste método pode ser visto abaixo:

  private void AddTab(string tabTexto)
        {
            ActionBar.Tab tab = ActionBar.NewTab();
            tab.SetText(tabTexto);

            tab.TabSelected += OnTabSelected;
            ActionBar.AddTab(tab);
        }

 

Para criar as guias chamamos o método NewTab na Action Bar e depois definimos o texto e o evento OntabSelected que vai permitir o usuário selecionar a guia ativa.

A implementação do evento pode ser vista a seguir :

       private void OnTabSelected(object sender, ActionBar.TabEventArgs e)
        {
            var tabAtual = (ActionBar.Tab)sender;
            if (tabAtual .Position == 0)
            {
                textView.Text = "Esta é a TAB Um que foi selecionada";
            }
            else
            {
                textView.Text = "Esta é TAB DOIS que foi Selecionada";
            }
        }

Executando o projeto iremos obter o seguinte resultado:

Em outro artigo vou mostrar uma outra maneira de obter o mesmo resultado.

Pegue o projeto aqui :  Droid_Tabs.zip (sem as referências)

(Disse Jesus) Na verdade, na verdade vos digo que quem ouve a minha palavra, e crê naquele que me enviou, tem a vida eterna, e não entrará em condenação, mas passou da morte para a vida.
João 5:24

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

Referências:


José Carlos Macoratti