アンドロイドでこんにちワン世界 | int hase; /*不要*/

アンドロイドでこんにちワン世界

重要なのは有限実行!!

ってことでプログラミングのお勉強を始めた!

ココには自分へのメモのつもりで書いていきますんで

たぶん興味ない人が見てもつまらないのでスルーでw


なんのプログラミングを勉強しているかというと


今流行のandroid!


ドロイド君カワユス!



まずは定番のコンニチワン世界から行ってみよう!



完成形

$ITエンジニアを目指す田舎者のブログ-こんにちワン世界


見事に動きました!


では中身を見ていきます


はじめなのでちょっと細かめに書くとします


-----------------------------------------------------------------------------------
インストール編

注意:細かいインストール方法などは多くのページで分かりやすく解説されているのでそちらを参照

ちなみにワタクシの開発環境は次のとおり

1.Eclipse日本語版としてPleiades Java版をインストール
 http://mergedoc.sourceforge.jp/

2.android SDKをインストール
 http://developer.android.com/sdk/index.html

3.eclipseの新規ソフトウェアインストールからアンドロイド開発用pluginの追加
 http://dl-ssl.google.com/android/eclipse/

4.Android SDKのインストール先指定
設定→AndroidでSDKのインストール先指定

-----------------------------------------------------------------------------------


1.プロジェクトの作成

eclipseではアプリケーション単位でプロジェクトを作成します。

ファイル→新規→Androidプロジェクトをクリック

ここで重要なのは最後!

ビルド・ターゲット
アプリケーション名
パッケージ名
CreateActivity
MainSDKVersion

ビルド・ターゲットは利用するAPIのバージョン
あんまり古いのを使うと互換性がないので注意!

アプリケーション名はそのままアプリケーションの名前
アンドロイドにインストールされた時の名前
自由にどうぞ!もちろん日本語もおk

CreateActivityはここでは細かく解説しないけど
Androidにはメインプログラムっていう概念がなくて基本的に並列動作前提で
アクティビティというものを継承したプログラムを動かします。

個人的なイメージではマルチスレッドにおけるスレッドみたいなものって考えてます。
ここで付けた名前がそのままプログラムとして自動生成されます

HelloActivity

HelloActivity.java

このプログラムはActivityを継承しています。

HelloActivity extends Activity


ITエンジニアを目指す田舎者のブログ-001

ITエンジニアを目指す田舎者のブログ-002

ITエンジニアを目指す田舎者のブログ-004

ITエンジニアを目指す田舎者のブログ-003



2.エミュレーターの作成

アンドロイド開発では基本的に仮想端末を作成しそこでプログラムを実行します
作成方法は

AndroidSDKおよびAVDマネージャー→新規

入力はテキトーで大丈夫ですがとりあえずターゲットの部分だけプログラムと揃えておくといいと思いまっす。

$ITエンジニアを目指す田舎者のブログ-008



3.ようやくコンニチワン世界

だいぶアバウトな説明でしたが!ようやくプログラムがかける!!

今回書き換えた場所を赤くしておきます。

HelloActivity.java

import android.app.Activity;
import android.os.Bundle;
import android.widget.ImageView;

public class HelloActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

ImageView im = (ImageView)findViewById(R.id.imageView1);
im.setImageResource(R.drawable.helloworld);

}
}


main.xml

android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>





え?何をしたかぜんぜんわからない?
ごめんなさい!

えっとまず今回使ったのは画面に画像を配置できるImageView

以上です!



まず準備として画像をアップロードします

画像は基本的にdrawableにいれます。
drawable-~
というのは同名のファイルを入れておくと適切な画像に勝手に置き換えてくれるらしいです!すごいっ!

今回サイズは一つしか用意してないのでdrawableというフォルダを作成します。

で、そこに作成した画像をドラッグ&ドロップ

$ITエンジニアを目指す田舎者のブログ-009

これでアップロード完了です。




main.xmlにの項目を書き加えます
このmain.xmlは画面のレイアウトを定義するxmlファイルです
ここで定義したレイアウトは先程のプログラムの初めの
setContentView(R.layout.main);
によって呼び出されます






この段階ではImageViewに画像は表示されていません


src = "@drawable/helloworld"android:layout_gravity="center">


こんなふうに書けば最初からいれておくこともできるのですが、プログラム内で変化させたほうがオモシロイと思ったのであえて書きませんでした

つぎにメインプログラムをいじります

HelloActivity.java

import android.app.Activity;
import android.os.Bundle;
import android.widget.ImageView;

public class HelloActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

ImageView im = (ImageView)findViewById(R.id.imageView1);
im.setImageResource(R.drawable.helloworld);

}
}

まず、先ほど定義したImageViewを呼び出します

この時超重要なのは

R.java

このプログラムは自動的に生成され、先ほど書いたやアップロードした画像のidを保持します
このidを参照することによってレイアウトとか、ファイルとかをプログラムでいじくりまわせるということです!!

id:id="@+id/imageView1" android:layout_gravity="center">


R.javaというファイルに定義されているidを使いImageViewを呼び出します

ImageView im = (ImageView)findViewById(R.id.imageView1);

この関数よく使うので要チェックです!

これで先程のImageViewをいじくりまわせるようになりました。

このImageViewに画像をはめこみます
im.setImageResource(R.drawable.helloworld);

今度はアップロードした画像のidを参照していますね



今回のプログラムの関係を図示化してみました

$ITエンジニアを目指す田舎者のブログ-010


色々雑でごめんなさい
ちょくちょく修正していきたいと思います

あー文章書くのって大変なんだねっ