Androidアプリ製作のいろいろ

役に立ったり面白かったり楽しかったり いろんなAndroidアプリケーションを作れるように いろいろ調べたり集めたり

ラベル Android の投稿を表示しています。 すべての投稿を表示
ラベル Android の投稿を表示しています。 すべての投稿を表示

2012年5月7日月曜日

記号、エスケープシークエンス、論理演算子

コーディングではとにかくたくさんの記号を使います。
適当に読んでいたので、まとめてみました。


記号繋がりで
・エスケープシークエンス・論理演算子
一緒にまとめました。


〓 〓 〓 〓 〓


◆読み方
!          エクスクラメーション

?          クエスチョン、はてな
"          ダブルクォーテーション、ダブルクォート、いんようふ
#          ナンバー、いげた、(シャープ) ※本来はシャープ記号ではない
$          ドル、ダラー、
%          パーセント
&          アンド、アンパサンド
+          プラス
-          マイナス、ハイフン
*          アステリスク、かける
/          スラッシュ、わる
\          バックスラッシュ
=          イコール
^          ハット、キャレット、アクサンシルコンフレックス
~          チルダ、なみダッシュ
'          アポストロフィ、シングルクォーテーション、
`          アクサングラーブ、バッククォート、
@          アットマーク
<          しょうなり、ひだりかくかっこ
>          だいなり、みぎかくかっこ
(          ひだりかっこ
)          みぎかっこ
{          ひだりちゅうかっこ
}          みぎちゅうかっこ
[          ひだりだいかっこ
]          みぎだいかっこ
;          セミコロン
:          コロン
,          コンマ
.         ピリオド、ドット
_         アンダーバー、アンダーライン、アンダースコア、したせん
|          バー、バーティカルライン、たてぼう
\          バックスラッシュ(¥(えん))

〓 〓 〓 〓 〓
◆エスケープシークエンス
print文等で記号をそのまま記述してしまうと「コードの一部」として扱われてしまうので
エスケープシークエンスとして入力して表示させる

ex. print文で ” (ダブルクォーテーション)を表示させる場合
●そのまま print” “ “ と記述すると、「”」はコードの一部とみなされ、表示されずエラーとなる
 避けるためにエスケープシークエンスで記述する
 print” \” “ と記述すると表示される


\"          ダブルクォーテーション
\'          シングルクォーテーション
\n         改行
\t          タブ
\b         バックスペース
\r          キャリッジリターン
\f          改ページ
\\           マーク
\uxxxx   Unicode文字

〓 〓 〓 〓 〓
◆論理演算子

&&         x && y
            xとyの両方がtrueの場合にtrueを返す。

||          x || y
xとyのいずれかがtrueの場合にtrueを返す。         

& x & y
xとyの両方がブール型且つ両方ともtrueの場合にtrueを返す。
両方の変数が整数型の場合はビットごとのAND演算を行う。

| x | y
xとyの両方がブール型且ついずれかがtrueの場合にtrueを返す。
          両方の変数が整数型の場合はビットごとのOR演算を行う。
^ x ^ y
xとyの両方がブール型且つxとyが異なった値の場合にtrueを返す。
両方の変数が整数型の場合はビットごとのXOR演算を行う。
! !x
xがfalse場合にtrueを返す。

2012年4月6日金曜日

Android 「Hello!World!」 ~ い

先に書いたソースコードのみで「Hello World!」と表示するアプリ。

package jp.app.woodroid;

import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.TextView;

public class HelloworldActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    TextView tv = new TextView(this);
    tv.setText("Hello World!");

    LinearLayout ll = new LinearLayout(getApplicationContext());
    ll.addView(tv);

    setContentView(ll);

    }
}

少し中を見てみたいと思います。

1行目はパッケージの宣言
2行目から7行目までは使用しているクラスのインポート

ソースコードは8行目から始まっています。
public class HelloworldActivity extends Activity {
Androidのプログラムは基本的にはJavaのプログラムと同じクラスですが Activityクラスを継承し作ります。

また、アプリの「画面を作る」メソッドがあり、その中で画面構成を行います。
    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    TextView tv = new TextView(this);
    tv.setText("Hello World!");

    LinearLayout ll = new LinearLayout(getApplicationContext());
    ll.addView(tv);

    setContentView(ll);

    }

onCreateメソッドをオーバーライドして、アプリの画面を作ります。
このonCreateメソッドの中では 「画面に『表示場所』を作って
『表示させたいパーツ』を設定して
表示を実行」
ということをしています。

まずは画面に表示させたいパーツ(=Viewと呼びます)を作ります。
Viewにはいろいろ種類がありますが、ここでは文字を表示させるView「TextView」クラスを使っています。
    TextView tv = new TextView(this);
    tv.setText("Hello World!");
14行目:TextViewクラスのインスタンスを作って
15行目:TextViewのsetTextメソッドで表示させる文字を設定しています。


次に、表示場所を作ります。(表示場所もViewの一種です)
    LinearLayout ll = new LinearLayout(getApplicationContext());
    ll.addView(tv);
17行目:LinearLayoutクラスのインスタンスを作っています。
(14行目のTextViewも同じくView生成時の引数はContextクラスのインスタンスを当てるんですが
このプログラムの場合には「this」で対応できます。
Contextに関しては別記事で書きたいと思っています)
18行目:表示させたいViewを設定するaddViewメソッドを使って、Viewを設定します。


そして20行目
    setContentView(ll);
setContentViewを使って、「『表示場所』を実行」します。
そうすると


Hello World!となる訳です。

ここにいろんなViewを設定したり、Viewにいろいろな命令を設定したりすることで
様々な動きをするアプリを作ることができます。

2012年4月5日木曜日

Androidアプリのつくり ~ 「Hello!World!」

Androidアプリのプログラムは、Javaのものと違って少し入り組んだ作りになっています。
Javaと同じように「アプリを制御するプログラム」だけを作って動かすこともできるし
「アプリを制御するプログラム」「画面構成を作るプログラム」と分ける事もできるし
もっと細かく分けると

・アプリを制御するプログラム
・画面構成を作るプログラム
・表示させる文字を設定するプログラム
・アプリ内で使う色を設定するプログラム
・アプリ内で使う画像や音データを保存するフォルダ
・
・
・・・と、細かく分けて作り、それを合わせてAndroidアプリとして動作させることができます。
Javaのプログラムと同じようにクラスを分けて作ることもできるので
見た目はとても複雑になっていきます。

でも「どういう作りになっているか」を理解し把握できれば
そんなに難しいものではないと判るはずです。

〓

とてもシンプルなアプリ ~ 画面に「Hello World!」と表示させるプログラム


package jp.app.woodroid;

import android.app.Activity;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.TextView;

public class HelloworldActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    TextView tv = new TextView(this);
    tv.setText("Hello World!");

    LinearLayout ll = new LinearLayout(getApplicationContext());
    ll.addView(tv);

    setContentView(ll);

 }
}

このコードで、画面に「Hello World!」と表示されます。

また、Androidでは「画面要素だけ別で用意してプログラムすることができる」ので
画面要素を別で用意すると、ソースコードはこうなります。

画面 layout.xml


    



ソース HellofworldActivity.java
package jp.app.woodroid;

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

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

  TextView tv = (TextView) findViewById(R.id.textView1);
  tv.setText("Hello World!");

  setContentView(R.layout.main);

 }
}
「ソースで画面を一緒に作る」「ソースと画面を別で作る」
作りたいアプリによってどちらが良いかは変わってくると思います。
その辺りは、やりやすい方で。

どちらを選んでも、こう表示されます。

Androidの新プロジェクト作成

新しくAndroidアプリを作る際は、新しいプロジェクトを作成しないといけません。


新しいプロジェクトをeclipseで作るには
「ファイル」メニューの中から「新規」を選びます。
そうするとまた別のメニューが開きますので、その一番下の「その他」を選択。



「その他」を選択すると、何を新規で作るかの選択画面へと移ります。
メニューの中にある「Android」から、「Androidプロジェクト」を選びます。



そうすると
「プロジェクト名」「どのAndroidOSバージョンで作るか」「パッケージ名」の入力となります。

「プロジェクト名」
そのまま、このプロジェクトの名前となります。
デフォルトのままだと、プロジェクト名がアプリ名となっています。

「どのAndroidOSバージョンで作るか」
アプリが動作するOSの指定となります。
プログラム中には「一定のバージョン以上でないと動かないもの」もありますが
これは後からでも変更できます。
とりあえずこれでいいかな?と設定しても問題ありません。

「パッケージ名」
ソースコードが格納されるフォルダがあり、その名前となります。
お約束(?)として「ドメインを逆から書いた状態で命名」することになっているそうです。
例えば、go.ahead.android.jpというドメインの逆→ jp.android.ahead.go となります。
パッケージ名はプロジェクト毎で変更しておかないと、後から少し困ることがあります。
「全く別のアプリを作っていてプロジェクト名はもちろん違う。
 でもパッケージ名が同じだと、同じアプリとして上書きインストールされてしまう」
こういうことが起こります。
もちろんパッケージ名も後から変更する事はできますが
少しだけ手間がかかるので、それぞれ違うパッケージ名をつける方が後の面倒がありません。











全て記入し「完了」押下で、Androidプロジェクトができあがります。
AndroidのプロジェクトはJavaプロジェクトと違って、中にはいろいろ入っています。





[src]の中にパッケージ、その中にソースコードが入ります。
[res]の中にはアプリで使う画像や音声などが格納されます。
それぞれ別途説明していきたいです。