質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

0回答

1552閲覧

androidでスピナーを一時保存して取り出したい

aaaaaaaaaaaaaa

総合スコア77

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2015/12/19 09:21

編集2022/01/12 10:55

リンク内容
を参考にしてonSaveInstanceStateでスピナーごと保存し、 onRestoreInstanceState内で取り出したスピナーのデータをそのままアダプターにセットしたいのですが、上手くできません。
実装したい事はonclick内で作成したドロップダウンが画面回転した際に消えてしまい、消えないようにしたいです。
何がいけないのかわかる方ご教授または添削をお願いします。

AllContactParcelable.java

public class AllContactParcelable implements Parcelable, SpinnerAdapter { private ArrayList<MainActivity.RowData[]> contactList; public int describeContents() { return 0; } public void writeToParcel(Parcel out, int flags) { //out.writeTypedList(contactList); } public static final Creator<AllContactParcelable> CREATOR = new Creator<AllContactParcelable>() { public AllContactParcelable createFromParcel(Parcel in) { return new AllContactParcelable(in); } public AllContactParcelable[] newArray(int size) { return new AllContactParcelable[size]; } }; private AllContactParcelable(Parcel in) { //contactList = (ArrayList<MainActivity.RowData[]>) (ArrayList<MainActivity.RowData[]>) in.createTypedArrayList(MainActivity.RowData.CREATOR); } public AllContactParcelable(ArrayAdapter<MainActivity.RowData> contactList) { //this.contactList = contactList; } @Override public View getDropDownView(int position, View convertView, ViewGroup parent) { return null; } @Override public void registerDataSetObserver(DataSetObserver observer) { } @Override public void unregisterDataSetObserver(DataSetObserver observer) { } @Override public int getCount() { return 0; } @Override public Object getItem(int position) { return null; } @Override public long getItemId(int position) { return 0; } @Override public boolean hasStableIds() { return false; } @Override public View getView(int position, View convertView, ViewGroup parent) { return null; } @Override public int getItemViewType(int position) { return 0; } @Override public int getViewTypeCount() { return 0; } @Override public boolean isEmpty() { return false; } }

MainActivity.java 一部抜粋

public static class RowData implements Parcelable { private String name; private String code; public int describeContents() { return 0; } public void writeToParcel(Parcel out, int flags) { out.writeString(name); out.writeString(code); } public static final Parcelable.Creator<RowData> CREATOR = new Parcelable.Creator<RowData>() { public RowData createFromParcel(Parcel in) { return new RowData(in); } public RowData[] newArray(int size) { return new RowData[size]; } }; private RowData(Parcel in) { name = in.readString(); code = in.readString(); } // コンストラクタ・セッタ・ゲッタ省略 RowData(String name, String code) { this.TOKCO = name; this.TOKNA = code; } public String getname() { return name; } public String getcode() { return code; } @Override public String toString() { return TOKNA; } } AllContactParcelable AllContactParcelable; : : : : : : (onclick内でドロップダウン作成) db = helper.getReadableDatabase(); // 列名の定義 String[] columns = {"NAME", "CODE", "NAK"}; // 得意先データの取得 Cursor cursor = db.query(DB_TABLE, columns, null, null, null, null, "CODE"); final RowData[] dataArray = new RowData[cursor.getCount()]; // 取得したデータをテーブル明細部に設定 for (int i = 0; cursor.moveToNext(); i++) { dataArray[i] = new RowData(cursor3.getString(0),cursor3.getString(0) + "\n" + cursor3.getString(1)); } ArrayAdapter<RowData> adapter = new ArrayAdapter<>(this, R.layout.list, dataArray); Spinner spinner = (Spinner) findViewById(R.id.n_naiyo); spinner3.setAdapter(adapter); AllContactParcelable = new AllContactParcelable(adapter); @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putParcelable("contact", AllContactParcelable); } @Override protected void onRestoreInstanceState(Bundle savedInstanceState) { super.onRestoreInstanceState(savedInstanceState); AllContactParcelable = savedInstanceState.getParcelable("contact"); Spinner spinner = (Spinner) findViewById(R.id.n_naiyo); spinner.setAdapter(AllContactParcelable); }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問