カテゴリー:
Activityクラス
閲覧数:1231 配信日:2013-04-18 17:52
2種類
setContentView(引数)実装方法による分類
・全2種類(正確には全3種類) … 「渡す引数」の違いによる。より正確には【 アクティビティにビューを追加する「setContentView」メソッドには、引数の異なる3つのメソッドが用意されている 】ため
「処理の流れ」比較
- | setContentView (View view) もしくは setContentView (View view, ViewGroup.LayoutParams params) | setContentView (int layoutResID) |
---|---|---|
- | レイアウト動的定義(JAVA) | レイアウト静的定義(XML) |
特徴 | ・プログラムの中でビューを作成してアクティビティに追加するため、プログラムの実行時条件に応じてビュー追加が可能 ・初期画面のようなものをプログラムの中で全て記述するとビューの定義などでプログラムが長くなってしまう |
・プログラムの中でビューの設定や配置方法などを記述する必要がないため、プログラムをすっきりとさせることができる ・プログラムの実行前にXMLファイルを作成しておく必要があるため、プログラムの実行中にビューを追加することは出来ない |
処理の流れ | 1. 部品クラスのオブジェクトを生成 ↓ 2. そのオブジェクトに表示される文字列を、setTextメソッドを使って設定 ↓ ※ここまでの処理で、ビューが作成される ↓ 3. Activitiyクラスで定義されているsetContentViewメソッドを利用して、 このビューをアクティビティへ追加 |
1. レイアウト用XMLファイルを作成 ↓ 2. Activitiyクラスで定義されているsetContentViewメソッドを利用して、 このファイルをアクティビティへ設定 ※左記と同じsetContentViewメソッドを利用するが、「引数はViewクラスのオブジェクトからint型の値」となる点に注意が必要。このint型の値はレイアウトXMLファイルのリソースIDと呼ばれる ※リソースIDは、レイアウト用XMLファイル名が「○○.xml」だった場合には、「R.layout.○○」で参照可能。ちなみに、「main.xml」だった場合には「R.layout.main」となる |
例 | ▼例1public void onCreate(Bundle savedInstanceState) { ▼例2 public void onCreate(Bundle savedInstanceState) { |
▼例1public void onCreate(Bundle savedInstanceState) { ▼例2 public void onCreate(Bundle savedInstanceState) { |