スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

明示的Intentを使って画面遷移する方法

今回は、Androidで画面遷移を実現する方法を調べたので、やり方をメモ。

まず、呼び出し元と呼び出し先の画面レイアウトを作成する。例として、タイトル画面からゲーム画面に遷移する想定で次のような画面を作ってみた。

①画面レイアウトの作成

title_activity.xmlgame_main_activity.xml
title-layout.jpggame-layout.jpg

XMLファイルはこんな感じ。

title_activity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
    <TextView android:text="タイトル画面" android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content"></TextView>
    <Button android:text="ゲーム画面起動" android:layout_height="wrap_content" android:layout_width="fill_parent" android:id="@+id/GameStartButton"></Button>
</LinearLayout>


game_main_activity.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent" android:weightSum="1">
    <TextView android:id="@+id/textView1"
     android:layout_weight="0.05"
     android:layout_width="fill_parent"
     android:text="ゲーム画面"
     android:layout_height="wrap_content"
     android:textSize="20sp">
    </TextView>
</LinearLayout>


今回は、タイトル画面でボタンをクリックするとゲーム画面が呼ばれるようにする。

②Activityのサブクラスを作成

Activityのサブクラスを作成する。呼び出し元のクラスが既に存在する場合は呼び出し先のみ作成する。
今回は以下のようなクラスを作成。

 呼び出し元…TitleActivity (TitleActivity.java)
 呼び出し先…GameMainActivity (GameMainActivity .java)

③画面遷移のコードを追加

ボタンクリックイベントを追加して、次の画面(ゲーム画面)を呼び出すコードを追加する。


public class TitleActivity extends Activity implements View.OnClickListener
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
       
        setContentView(R.layout.title_activity);
        // ボタンコントロールのインスタンスを取得
        Button button = (Button)findViewById(R.id.GameStartButton);
       
        // ボタンクリックイベントを登録
        button.setOnClickListener(this);
    }
   
    // ボタンクリックイベント
    public void onClick(View v) { 
        // ゲームメイン画面に遷移
        Intent intent = new Intent( TitleActivity.this, GameMainActivity.class );
        startActivity( intent ); 
    }




画面間の遷移は、Intentと呼ばれるAndroid独自の連携機能を使って実現する。このIntentは、今回のように同一アプリ内のActivityを指定できる他、アプリケーションをまたいだ指定も出来る。この場合、「メールアプリを起動」「キーボード入力を起動」といった具合で、実際に使用するメールアプリやキーボードアプリをユーザーに選択させることもできる。前者のように直接Activityを指定する方法は「明示的Intent」、後者のように振る舞いだけを指定する方法を「暗黙的Intent」と呼ぶ。ここではこれ以上説明しないが、Androidの開発でキモになる仕組みらしい。
スポンサーサイト

comment

管理者にだけ表示を許可する

Androidアプリ紹介
リリース中のアプリはまだありません。
iPhoneアプリ紹介
タイピング革命
フリック入力はタイピング革命で練習しよう!ネットランキングがウリのタイピングアプリ

icon-l-typing.jpg

初心者も安心のトレーニングモード搭載!リプレイ機能でオンラインランキング上の達人のプレイを見てみよう!



簡単3Dカメラ
iPhoneで手軽に3D写真を楽しもう!平行法/交差法/アナグリフ/グラグラ3Dに対応。
icon-l-3d.jpg

2枚の写真を撮影するだけで、裸眼で立体視できる3D写真が作成できます。平行法、交差法、アナグリフ、グラグラ3Dと多彩なモードを搭載。85円でこの機能を体感できるのは簡単3Dカメラだけ!

プロフィール

あらきんぐ★

Author:あらきんぐ★
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
アクセスカウンター
アクセスランキング
[ジャンルランキング]
携帯電話・PHS
333位
アクセスランキングを見る>>

[サブジャンルランキング]
Android(Google)
80位
アクセスランキングを見る>>
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。