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

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

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

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

Android

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

GsACADEMY

セカイを変えるエンジニア【GEEK】を養成する 授業料後払いのエンジニア養成学校です。 ①一流企業によるメンター指導 基本習得後は2ヶ月間メンターの個別指導でサービス完成を目指します。 ②480万円までの起業支援出資 起業志望者をサムライインキュベートが支援(審査あり)します。 ③初心者歓迎・授業料後払い 丸暗記ではなく、創りながら。初心者のための授業料後払い制度です。

Q&A

0回答

3712閲覧

Android: Cursorの使い方

ke11y

総合スコア18

Java

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

Android

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

GsACADEMY

セカイを変えるエンジニア【GEEK】を養成する 授業料後払いのエンジニア養成学校です。 ①一流企業によるメンター指導 基本習得後は2ヶ月間メンターの個別指導でサービス完成を目指します。 ②480万円までの起業支援出資 起業志望者をサムライインキュベートが支援(審査あり)します。 ③初心者歓迎・授業料後払い 丸暗記ではなく、創りながら。初心者のための授業料後払い制度です。

0グッド

0クリップ

投稿2015/06/02 16:07

Androidで編集画面に個人情報を入力し、登録ボタンを押すとメインページに反映されるというシステムを作りたいです。
名前と国籍を表示できるようにしたところ編集画面から入力しても名前の表示がなくなり、
ログにはnullの表示がされるようになってしまいました。
Cursorでget Stringを行なったときにnull表示がされる原因をご教示いただければ幸いです。
ちなみに、xmlには文字を表示していますが反映されておりません。
宜しくお願いいたします。---------

  1. package com.example.name.helloworld;
  2. import android.content.ContentValues;
  3. import android.content.Intent;
  4. import android.database.Cursor;
  5. import android.database.sqlite.SQLiteDatabase;
  6. import android.support.v7.app.ActionBarActivity;
  7. import android.os.Bundle;
  8. import android.support.v7.app.AppCompatActivity;
  9. import android.view.Gravity;
  10. import android.view.Menu;
  11. import android.view.MenuItem;
  12. import android.view.View;
  13. import android.widget.Button;
  14. import android.widget.EditText;
  15. import android.widget.TextView;
  16. import android.widget.Toast;
  17. import static android.util.Log.v;
  18. public class EditProfile extends AppCompatActivity {
  19. private Button submitView;
  20. private EditText nameView;
  21. private EditText countryView;
  22. private SQLiteDatabase dbObj;
  23. private View.OnClickListener submit_ClickListener = new View.OnClickListener(){
  24. public void onClick(View v) {submit_Click(v);}};
  25. private PersonOpenHelper dbHelper;
  26. @Override
  27. protected void onCreate(Bundle savedInstanceState) {
  28. super.onCreate(savedInstanceState);
  29. setContentView(R.layout.activity_edit_profile);
  30. dbHelper = new PersonOpenHelper(this);
  31. submitView = (Button)findViewById(R.id.submit_btn);
  32. submitView.setOnClickListener(submit_ClickListener);
  33. nameView = (EditText) findViewById(R.id.edit_name);
  34. String name = "";
  35. name = getYourName();
  36. // v("tag", ":" + name);
  37. //country
  38. countryView =(EditText)findViewById(R.id.edit_country);
  39. String country ="";
  40. country = getYourCountry();
  41. // v("tag", ":" + country);
  42. }
  43. public void select_Object () {
  44. dbObj = dbHelper.getReadableDatabase();
  45. String sql = "SELECT id,name FROM profile_table";
  46. Cursor c = dbObj.rawQuery(sql, null);
  47. while (c.moveToNext()){
  48. // Map<String, Object> map;
  49. // map = new HashMap<String, Object>();
  50. // map.put("user_id", c.getInt(0)+"");
  51. // map.put("name", c.getString(1));
  52. // map.put("thumbnail", getThumbnail(c.getBlob(2),IMAGE_SIZE_NORMAL));
  53. // map.put("updated_at", c.getString(3));
  54. //
  55. // followData.add(map);
  56. }
  57. c.close();
  58. dbObj.close();
  59. }
  60. /**
  61. * getName
  62. */
  63. public String getYourName () {
  64. dbObj = dbHelper.getReadableDatabase();
  65. String sql = "SELECT id,name FROM profile_table order by id desc";
  66. Cursor c = dbObj.rawQuery(sql, null);
  67. c.moveToFirst();
  68. String name = "";
  69. if (c.getCount() > 0) {
  70. name = c.getString(1);
  71. }
  72. // v("tag_name",c.getInt(0)+"");
  73. c.close();
  74. dbObj.close();
  75. return name;
  76. }
  77. /**
  78. * getCountry
  79. */
  80. public String getYourCountry () {
  81. dbObj = dbHelper.getReadableDatabase();
  82. String sql = "SELECT id,country FROM profile_table order by id desc";
  83. Cursor c = dbObj.rawQuery(sql, null);
  84. c.moveToFirst();
  85. String country = "";
  86. if (c.getCount() > 0) {
  87. country = c.getString(1);
  88. }
  89. // v("tag_country",c.getInt(0)+"");
  90. c.close();
  91. dbObj.close();
  92. return country;
  93. }
  94. /**
  95. * submit
  96. */
  97. private void submit_Click (View v) {
  98. String name = null;
  99. name = nameView.getText().toString();
  100. String country = null;
  101. country = countryView.getText().toString();
  102. if (name.equals(null) == true || name.equals("") == true){
  103. Toast toast = Toast.makeText(getApplicationContext(), "名前を入力してください。", Toast.LENGTH_LONG);
  104. toast.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT, 0, 0);
  105. toast.show();
  106. } else if (country.equals(null) == true || country.equals("") == true){
  107. Toast toast = Toast.makeText(getApplicationContext(), "国籍を入力してください。", Toast.LENGTH_LONG);
  108. toast.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT, 0, 0);
  109. toast.show();
  110. } else{
  111. v("tag_name",name+"");
  112. ContentValues values_name = new ContentValues();
  113. values_name.put("name", name+"");
  114. //データベースにここで入る
  115. long y = insertDBCtr(values_name, "profile_table");
  116. v("tag_country",country+"");
  117. ContentValues values_country = new ContentValues();
  118. values_country.put("country", country+"");
  119. //データベースにここで入る
  120. long z = insertDBCtr(values_country, "profile_table");
  121. Intent intent = new Intent(this, MainActivity.class);
  122. startActivity(intent);
  123. }
  124. }
  125. /**
  126. * db control
  127. * @param values
  128. * @param table
  129. * @return
  130. */
  131. public long insertDBCtr (ContentValues values,String table) {
  132. SQLiteDatabase db = dbHelper.getWritableDatabase();
  133. long ret;
  134. try {
  135. ret = db.insert(table, null, values);
  136. } finally {
  137. db.close();
  138. }
  139. return ret;
  140. }
  141. @Override
  142. public boolean onCreateOptionsMenu(Menu menu) {
  143. // Inflate the menu; this adds items to the action bar if it is present.
  144. // getMenuInflater().inflate(R.menu.menu_edit_profile, menu);
  145. return true;
  146. }
  147. @Override
  148. public boolean onOptionsItemSelected(MenuItem item) {
  149. // Handle action bar item clicks here. The action bar will
  150. // automatically handle clicks on the Home/Up button, so long
  151. // as you specify a parent activity in AndroidManifest.xml.
  152. int id = item.getItemId();
  153. //noinspection SimplifiableIfStatement
  154. if (id == R.id.action_settings) {
  155. return true;
  156. }
  157. return super.onOptionsItemSelected(item);
  158. }
  159. }

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

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

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

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

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

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問