インテント … 項目画面からのデータをメイン画面に反映(DB未利用) … 作成編4

アプリ ソースコード家計簿アプリ

概要

 状態:終了  閲覧数:1,115  投稿日:2013-07-31  更新日:2013-08-02
・2日目、7時間かけるも、動作させることが出来ず、結局諦める
インテント … 項目画面からのデータをメイン画面に反映(DB未利用)

・悔しいので再度挑戦したら、ようやく出来た。3日かかったけど…


動作理解が目的


・実際のデータ保存はデータベースで行う
・このエントリーで記載している内容は、実装確認できた段階でコメントアウト
・あくまでも動作理解が目的

手順 … 「項目入力画面」 … クリックリスナー

 閲覧数:359 投稿日:2013-08-01 更新日:2013-08-01

大前提


・「項目入力画面」では、4つあるクリックリスナー実装方式の内、「2.既存のクラスにインターフェイスを実装」を採用している


1.インターフェイス実装


▼/src/android/style/householdaccount/Item.java
・既存クラスにインターフェイスを実装
public class Item extends Activity implements OnClickListener{
//public class Item extends Activity{



2.クリックリスナー登録


onCreateメソッド内にて、クリックリスナー登録
・setOnClickListener引数に this を指定
        button4.setOnClickListener(this);//記入ボタン



3.onClickメソッドをオーバーライド


onClickメソッド(ボタンクリック時に呼ばれるメソッド)をオーバーライド
3-1.edit1~3に入力したデータをgetText()メソッドで取得
3-2.toString()メソッドで文字列に変換
3-3.putExtraメソッドでintent1のdata1~3へ格納
    public void onClick(View v) {
    if (v==button4){//記入ボタンクリックされたら
      Intent intent2=new Intent(Item.this,MainActivity.class);
//       edit1~3に入力したデータをgetText()メソッドで取得
//       toString()メソッドで文字列に変換
//       putExtraメソッドでintent1のdata1~3へ格納
      intent2.putExtra("data1", edit1.getText().toString());
      intent2.putExtra("data2", edit2.getText().toString());
      intent2.putExtra("data3", edit3.getText().toString());
    intent2.putExtra("year", year);      
      intent2.putExtra("month", month);
      intent2.putExtra("day", day);
      startActivity(intent2);
    }
   }    

※「intent1」はカレンダー画面経由インテントで利用しているため、被らないよう「intent2」を指定

手順 … 「メイン画面」 … インテントデータ受取&表示

 閲覧数:398 投稿日:2013-08-01 更新日:2013-08-01

1.変数定義


▼/src/android/style/householdaccount/MainActivity.java
public class MainActivity extends Activity{


/* 変数の定義 */
private TextView text1;



2.ボタンオブジェクト取得


・onCreateメソッド内にて、ボタンオブジェクト取得
        /* コンポーネントの設定 */
       text1=(TextView)this.findViewById(R.id.text1);    



3.レイアウト設定


▼/res/layout/activity_main.xml
    <TextView
android:id="@+id/text1"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
       android:layout_marginLeft="10.0px"
/>



4.データ受取&表示


▼/src/android/style/householdaccount/MainActivity.java
・onCreateメソッド内
4-1.getIntent()メソッドでItem.javaの intentを取得
4-2.getStringExtraで、intent2のdata1~3のデータを取得
4-3.取得内容を、text1にsetTextメソッドで格納
        Intent intent2 = getIntent();//getIntent()メソッドでItem.javaの intentを取得
// getStringExtraで、intent2のdata1~3のデータを取得
String d1 = intent2.getStringExtra("data1");
String d2 = intent2.getStringExtra("data2");
String d3 = intent2.getStringExtra("data3");

text1.setText(d1+d2+d3);//取得内容を、text1にsetTextメソッドで格納

}



カレンダー画面 … 作成編3

データベース・基礎(固定値INSERT) … 作成編5



週間人気ページランキング / 5-12 → 5-18
順位 ページタイトル抜粋 アクセス数
アクセスが、ありませんでした! 0
2024/5/19 1:01 更新