2011年07月02日

javadoc翻訳 〜Activity編〜(1)

原文 Android Developers Activity
An activity is a single, focused thing that the user can do. Almost all
activities interact with the user, so the Activity class takes care of
creating a window for you in which you can place your UI with {@link #setContentView}
人間が、スマートフォンを使用して何かしているところをイメージしてみてほしい。
彼はスマートフォンで何をしているだろうか?
テキストを編集していることもあるだろうし、
何らかの決定ボタンを押しているかもしれない。
一覧表示されたリストから何かを選ぶところかもしれない。
いずれにしても、そのユーザの選択と行動の可能性は、画面上にどのようにUIが
配置されているかによって、限定されているだろう。

Activtyとは、その「ただひとつに決まったユーザビリティ・セット」にフォーカスしている。
Activityであればそのほぼ全てがユーザと相互に関係(interact、以後インタラクトと表記)する。
ユーザとやり取りする部分の多くがディスプレイを使用するので、必然的にActivityは
画面の生成に関心を払うことになる。
言い換えればActivityは「画面のレイアウト」を決定する役割がある。
それを行うメソッドがsetContentViewメソッドである。

  ※(参考)setContentViewメソッドは以下の3種類が存在する。
  setContentView (int layoutResID)
  setContentView (View view)
  setContentView (View view, ViewGroup.LayoutParams params)

While activities are often presented to the user as full-screen windows,
they can also be used in other ways: as floating windows (via a theme with
android.R$attr.windowIsFloating set) or embedded inside of another activity
(using android.app.ActivityGroup).

Activityはディスプレイ平面をいっぱいに使用して、ユーザとのやり取りを行うが、
3次元方向を表現することもできる。それがwindowIsFloatingテーマを通して表現する
浮遊するウィンドウ(Floating windows)」である。

あるいは、他のActivitを内部に組み込んで使用する。
それがandroid.app.ActivityGroupである。

※参考 ActivityGroupの理解については以下のサイトのお世話になりました。
Y.A.M の 雑記帳

There are two methods almost all subclasses of Activity will implement:
android.app.Activity.onCreate(android.os.Bundle) is where you initialize your activity.
Most importantly, here you will usually call android.app.Activity.setContentView(int)
with a layout resource defining your UI, and using android.app.Activity.findViewById(int)
to retrieve the widgets in that UI that you need to interact with programmatically.
android.app.Activity.onPause() is where you deal with the user leaving your activity.
Most importantly, any changes made by the user should at this point be committed
(usually to the android.content.ContentProvider holding the data).
まずは2つのメソッドに注目してみる。
これはほぼ全てのActivityのサブクラスが実装することになるだろう。

・onCreate()はActivityを初期化するための場である。
 多くの場合このメソッド内でonSetContentView()を使い、事前に定義したUIを適用する。
 上記した3つの種類のうち、setContentView (int layoutResID)を思い出してほしい。
 このIDが指し示す定義用XMLファイルに使用する部品を外部定義するのである。
 プログラマがコードの中で、個々の部品にインタラクトしたい場合は、findViewById(int)
 を使用する。

・onPause()はユーザがActivityを去っていく際のコールバックである。
 重要なことは、ユーザがその時点で変更した情報の全てを復元可能な形でコミット
 すべきであるということだ。 普通、こういったデータの保持はandroid.content.ContentProvider
 が受け持つ。

To be of use with Context.startActivity(), all activity classes must have a corresponding
declaration in their package's AndroidManifest.xml.

The Activity class is an important part of an application's overall lifecycle,
and the way activities are launched and put together is a fundamental
part of the platform's application model.
For a detailed perspective on the structure of Android applications and lifecycles,
please read the Application Fundamentals and Tasks and Back Stack documents.

Context.startActivity()で新たなActivityをスタートできるが、それ有効化するには
AndroidManifest.xmlに使用するActivityの宣言をしなければならない。
以下に例を示す。



Activityは、アプリケーションのライフサイクルを通じて、重要な役割を果たす。
Activityを起動させ、またそれらを集約していく方法は、このプラットフォーム・アプリケーションモデル
において根源的な部分である。
Androidアプリケーションとそのライフサイクルに関わる構造について、より詳しく知りたければ以下の2つを参照。
Application Fundamentals
Tasks and Back Stack

javadoc翻訳 〜Activity編〜(2)
javadoc翻訳 〜Activity編〜(3)
javadoc翻訳 〜Activity編〜(4)
javadoc翻訳 〜Activity編〜(5)
javadoc翻訳 〜Activity編〜(6)last
posted by sandman at 15:15| Comment(0) | Android | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。