FC2ブログ

スポンサーサイト

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

メモ帳開発②

メモ帳開発②

起動画面は前回作成したので、(前回記事
サブ画面を作り、画面遷移を行いメモの内容が確認できる画面を作成したいと思います。

1.はじめにサブ画面を用意します。

 Eclipse上で、「ファイル」→「新規」→「その他」をクリック。

 ウィザードを選択画面で、「Android」→「Android XML レイアウト・ファイル」を選択し、次へをクリック。

 ファイル名に適当な名前をつけて(今回はactivity_sub_main.xmlとしました)、次へをクリック。

 次の画面では、レイアウトファイルの保存先を指定して、完了をクリック。
 ※何もしなくても、res/Layoutが指定されているはずなので、そのまま完了で問題ありません。

 すると下記のような画面が作成され、サブ画面の準備は完了です。
 20130304-05.png

2.このサブ画面を制御するためのソースファイルを用意します。

 「ファイル」→「新規」→「クラス」をクリック。

 新規 Java クラス画面で、下記の設定を指定してください。
 パッケージ名:(例、com.xxx.memo)
 名前:(例、SubMainActivity)
 スーパークラス:android.app.Activity

 上記を指定したら、「完了」ボタンをクリック。

 作成されたソースファイルにonCreateメソッドを追加します。
 この時に先で作成したレイアウトファイルを指定します。
 SubMainActivity.java
  @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

// 画面の XML を指定する
setContentView(R.layout.activity_sub_main);
}

 ※この時に、バンドルのimportをしろと警告が出ますので、importしてください。
  import android.os.Bundle;

3.メイン画面の処理を追加します。

 前回作成したメイン画面のボタンには、何も処理を記述していないので、
 ここで、メイン画面の新規作成ボタンを押したときに、サブ画面に遷移する処理を記述します。

 ボタンイベントの書き方はいろいろありますが、ここでは一番簡単な方法を記載します。

 ①メイン画面のソースファイルに新規にメソッドを追加する。
  メソッドの名前はなんでも良いです。(仮にClickEventとしておきます。)

 ②上記のメソッド内に、画面遷移の処理を書きます。

  ・複数のボタンイベントに対応するため、分岐処理とします。
  ・startActivityを呼び出して,別のアクティビティを表示します。
   ※ここでインテントによる処理を記載しますが、インテントとはAndroid特有の処理です。
    「明示的インテント」「暗黙的インテント」があり、イメージ的にはユーザが自分で意図する処理が
    「明示的」で相手から電話やメールがあった時に発生するイベントが「暗黙的」というイメージに
    なると思います。

 ③最後にボタンのプロパティでonClickに作成したメソッド名を記載する。

 ソースとxmlファイルは下記です。

 MainActivity.java
  //ボタンのクリックイベントが発生した時
public void ClickEvent(View v){
//IDごとに処理を分ける
switch (v.getId()) {
//新規作成ボタンの時
case R.id.btn_New:
//明示的インテント
Intent intent = new Intent( MainActivity.this, SubMainActivity.class );
//画面遷移
startActivity( intent );

default:
break;
}
}

 activity_main.xml(追加分のみ)
  <Button
・・・省略・・・
android:onClick="ClickEvent"
・・・省略・・・
/>

4.サブ画面をデザインしていきます。
 メモ帳の機能から考えて新規モードと編集モードが必要だと思いますが、
 まずは新規モードのみ考えてデザインを行います。
 とりあえず必要なのはMultiLineTextと保存ボタン・キャンセルボタンだと思うので、
 上記で作成したサブ画面にそれぞれ部品を配置し、下記画面を作成します。
 20130305-02.png

 ※デザインの仕方は、前回記事を参照し、作成してください。
  繰り返しになりますが、デザインは慣れるしかありません。
 
 レイアウトファイルとソースファイルは下記です。

 activity_sub_main.xml
  <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<EditText
android:id="@+id/txt_New"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:ems="10"
android:gravity="top"
android:inputType="textMultiLine" >

<requestFocus />
</EditText>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >

<Button
android:id="@+id/btn_Save"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableLeft="@drawable/ic_btn_save2"
android:text="@string/btn_save" />

<Button
android:id="@+id/btn_Cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableLeft="@drawable/ic_btn_cancel"
android:text="@string/btn_cancel" />

</LinearLayout>

</LinearLayout>

 SubMainActivity 
  public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

// 画面の XML を指定する
setContentView(R.layout.activity_sub_main);
//タイトルの名称をレイアウトから取得
setTitle(R.string.title_sub_main);
}

5.起動確認を行います。

 起動後、「新規作成」ボタンをクリックすると、
 新規入力画面に遷移することが確認できると思います。
20130305-03.png
 ⇒ 20130305-04.png


次は、サブ画面の制御として、保存とキャンセルを実装します。
メモ開発③へ

























人気ブログランキングへ FC2 Blog Ranking BS blog Ranking
ブログランキング
スポンサーサイト

テーマ : プログラミング
ジャンル : コンピュータ

コメントの投稿

非公開コメント

カテゴリ
最新記事
最新コメント
PR





最新トラックバック
月別アーカイブ
検索フォーム
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

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