ソース掲示板




すべてから検索

キーワード   条件 表示 現行ログ 過去ログ トピックス 名前 本文
Android 後期試験 解答手順概要 (3) / 画面表示( NumberPicker )
日時: 2016/01/11 14:11
名前: lightbox



単純なテキストでは無いコントロールを使用する場合は、Syain クラス内で独自に処理を実装して使用します。

機能1 : コントロールのセットアップ : 
	public void setupSeibetuControl()

機能2 : コントロールへのデータセット
	public void setSeibetuControl()
	※ 変数へのデータセットは自動で行われるので引数は必要ありません

機能3 : コントロールからデータの取得
	public void getSeibetuControl()
拡張子:
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        tools:context=".MainActivity">

    <data>
        <variable
            name="user"
            type="sample.lightbox.abdbupdate.Syain"/>
    </data>

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/spSyozoku"
            android:spinnerMode="dialog"/>

        <NumberPicker
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/numSeibetu"/>

        <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/spKanri"
            android:spinnerMode="dialog"/>

        <DatePicker
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/dateBirth"
            android:datePickerMode="spinner"/>

    </LinearLayout>
</layout>
メンテナンス

概要 ( No.1 )
日時: 2016/01/12 10:43
名前: lightbox


日時: 2016/01/12 10:43
名前: lightbox
1) MainActivity の データの初期表示 で setupSeibetuControl() を呼び出して、性別表示の準備を行います。

2) JSON を読み出した時に、エラーでなければ setSeibetuControl() を呼び出してデータを設定します
MainActivity
拡張子:
// *************************************************
// 初期画面表示
// MainActivity の setContentView と同等です
// *************************************************
binding = DataBindingUtil.setContentView(MainActivity.this, R.layout.activity_main);
// データの初期表示
Syain.context = MainActivity.this;
Syain.np_seibetu = (NumberPicker) MainActivity.this.findViewById(R.id.numSeibetu);

syain = new Syain();
syain.setupSeibetuControl();

binding.setUser(syain);

ButtonAction クラス
拡張子:
Log.i("lightbox", s);

Gson gson = new Gson();
syain = gson.fromJson(s,Syain.class);
binding.setUser(syain);

// データが正常な場合
if (!syain.status.equals("ERROR")) {

	syain.setSeibetuControl();

}

Tools1114.setFocusNoKeyboard(context, R.id.editKj);
エラー時の JSON 例
拡張子:
{
    "type" : "GET";
    "status" : "ERROR";
    "scode": "9999",
    "kj": "データがありません",
    "furi": null
}
※ scode が存在しなかった
このアーティクルの参照用URLをクリップボードにコピー メンテナンス