segunda-feira, 27 de junho de 2011

Customizar font do TextView

Olá,

Uma maneira fácil de se customizar uma fonte no Android é parametrizar diretamente no seu TextView as opções que você deseja.

Existem pelo menos 4 atributos que você pode configurar para deixar mais ao seu gosto uma determinada fonte, abaixo seguem os atributos:

TextSize:
Responsável por definir o tamanho da fonte, a Google recomenda que utiliza o padrão de dimensão "sp" (scaled-pixels)

Ex.: android:textsize="15sp" 

TypeFace:
Define o tipo de fonte utilizada por padrão existem 4 tipos (normal, sans, serif, monospace)

Ex.: android:typeface="sans" 

TextStyle:
Define o estilo da fonte (normal, bold, italic)

Ex.: android:textStyle="bold" 

TextColor:
Define a cor da fonte e aceita um valor RGB em hexadecimal

Ex.: android:textColor="#000000"  (preto)
Ex.: android:textColor="#00ccff"  (azul)


A seguir temos um exemplo completo:
<TextView> 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:text="@string/hello"
    android:textSize="25sp" 
    android:textColor="#00ccff"
    android:textStyle="bold"
    android:typeface="monospace" 
/>

Como resultado temos a tela figura abaixo:
























Com as configurações acima você já é capaz de criar intefarces bem mais apresentáveis  em seus aplicativos.


Desenvolvi o jogo Circus Puzzle Free ele é um quebra-cabeça e está publicado no Android Market, agradeço a todos que baixarem, jogarem e comentarem.


Desenv com qualidade!

domingo, 26 de junho de 2011

Criar Activity com orientação Portrait

Olá

Hoje veremos como é simples criar uma Activity com orientação "fixa" Portrait, para isso basta mudar no arquivo AndroidManifest.xml as propriedades de orientação da Activity desejada.

Abaixo segue um exemplo de como fazer essa operação:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="br.com.empresa"
      android:versionCode="1"
      android:versionName="1.0">

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Principal"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
  <activity android:name=".Act1" android:configChanges="orientation" android:screenOrientation="portrait"></activity>  <activity android:name=".Act2"></activity>
    </application>
</manifest>

Repare que temos 3 Activity (Main, Act1 e Act2) e somente mudamos a orientação da Act1, caso queira que as outras Activity também mudem precisa adicionar os atributos de configChanges e screenOrientation também.

Abaixo seguem os possíveis parâmetros:

"unspecified": Valor padrão. O sistema escolhe a orientação. O sistema escolhe da política que ele usa, e, portanto, as escolhas feitas em contextos específicos, podem ser diferentes de dispositivo para dispositivo.

"landscape": Paisagem (a tela é mais larga do que alta).

"portrait": Portrait (a tela é mais alta do que larga).

"user": orientação atual preferido pelo usuário.

"behind": A mesma orientação que a atividade que está imediatamente abaixo dela na pilha de atividade.

"sensor": A orientação determinada por um sensor de orientação física. A orientação da tela depende de como o usuário está segurando o aparelho, ela muda quando o usuário gira o dispositivo.

"nosensor": Uma determinada sem referência a um sensor de orientação física. O sensor é ignorado, de modo que o monitor não vai rodar com base em como o usuário move o dispositivo. Exceto por esta distinção, o sistema escolhe a orientação usando a mesma política que para a configuração de "unspecified".

Desenv com qualidade!

sábado, 25 de junho de 2011

Compilar e assinar aplicativo Android

Olá,

Esses dias eu estava procurando como compilar um App Android e descobri que pode ser compilado "manualmente" por assim dizer, onde você tem que executar o Keytool e depois o Jarsigner e este é um processo meio burocrático e complicado (mas que vale a pena ser conhecido e estudado).

Uma maneira bem mais simples de compilar e assinar um App Android é utilizando o Eclipse em conjunto com o ADT, ele já faz todo o serviço pesado para você como compilar, assinar e alinhar o pacote final, para isso selecione seu projeto e clique com o botão direito nele e vá em Android Tools e em seguida Export Signed Application Package, conforme figura abaixo:







































Após isso basta seguir as orientações que o próprio Eclipse faz, como informar o nome do aplicativo e depois se já existe um chave (keystore) , selecionar a opção para criar uma nova chave, conforme abaixo:



























Na tela de criação da chave todos os campos obrigatórios e no campo "Validity (years)" informe um número superior a 25 pois o Google exige isso, caso você for disponibilizar seu App no Market Android.




























Em seguida é só confirmar a geração de seu Apk, conforme abaixo.



























Pronto agora é só instalar seu aplicativo em um smartphone ou Tablet.


Desenvolvi o jogo Circus Puzzle Free ele é um quebra-cabeça e está publicado no Android Market, agradeço a todos que baixarem, jogarem e comentarem.


Desenv com qualidade!

quinta-feira, 23 de junho de 2011

AndroidManifest

Olá,

Nesse post pretendo esclarece um pouco mais sobre o arquivo AndroidManifest.xml.

Todo projeto deve conter o arquivo AndroidManifest.xml em seu diretório raiz, nesse arquivo temos informações essenciais sobre nosso aplicativo como, por exemplo, nome do pacote Java, as permissões que o aplicativo possui, qual a versão mínima da API Android.

Abaixo segue um exemplo:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="br.com.empresa"
      android:versionCode="1"
      android:versionName="1.0">

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Hello"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

Caso nosso sistema deva ter um acesso externo "Internet" basta incluir a seguinte permissão:<pre><code>
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="br.com.empresa"
      android:versionCode="1"
      android:versionName="1.0">

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Hello"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
  <uses-permission android:name="android.permission.INTERNET"/>  
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 
</manifest></code></pre>Caso nosso aplicativo contenham mais de uma Activity precisamos declarar ela aqui também

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="br.com.empresa"
      android:versionCode="1"
      android:versionName="1.0">

    <application android:icon="@drawable/icon" android:label="@string/app_name">
        <activity android:name=".Hello"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".NomeDaSuaActivity"></activity>
    </application>
</manifest>

Desenv com qualidade!

quarta-feira, 22 de junho de 2011

Hello World

Olá,


Nesse post vou explicar um pouco sobre dúvidas que eu tive (imagino que outros também) no começo de meus estudos sobre Android, demorei um pouco para entender onde escrevia oque.

Vou explicar um pouco a figura abaixo:



1º - Pasta src: local onde ficará o próprio código

2º - Pasta res\drawable: local destinado para guardar as figuras que seu sistema irá utilizar

3º - Pasta res\layout: aqui ficarão as Intent's (telas/interfaces)

4º - Pasta res\values: no arquivo "strings.xml" serão adicionadas as constantes que serão utilizadas nas suas Intent's como por exemplo o conteúdo que irá aparecer em um TextView (Label se assim preferir).

5º - AndroidManifest.xml: nesse arquivo irá conter as informações sobre seu sistema por exemplo versão, tipo de permissão, quais Intent's que seu sistema irá utilizar


Desenv com qualidade!

segunda-feira, 20 de junho de 2011

Boas vindas !

Olá,

Em breve estarei postando varias dicas de programação voltadas para a plataforma Android, espero que gostem.


Obrigado