Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从计时器选择器保存和显示当前分钟数?(当前小时数已实施)_Java_Android_Eclipse_Sqlite_Timepicker - Fatal编程技术网

Java 如何从计时器选择器保存和显示当前分钟数?(当前小时数已实施)

Java 如何从计时器选择器保存和显示当前分钟数?(当前小时数已实施),java,android,eclipse,sqlite,timepicker,Java,Android,Eclipse,Sqlite,Timepicker,我有一个应用程序,它将CurrentHour存储在sqlite数据库中,然后在另一个活动中显示它。这是我第一次使用时间选择器-因此我不确定我到底做错了什么,但当我添加到存储和查看CurrentHour的成功代码中时-当我尝试为CurrentMinute添加代码(基于CurrentHour)时,应用程序将不会保存数据 添加_country.xml(我试图从中存储分钟值的计时器选择器所在的位置) DATABASEOPENHELPER.JAVA 附言 我希望在view_country.xml中的同一行

我有一个应用程序,它将CurrentHour存储在sqlite数据库中,然后在另一个活动中显示它。这是我第一次使用时间选择器-因此我不确定我到底做错了什么,但当我添加到存储和查看CurrentHour的成功代码中时-当我尝试为CurrentMinute添加代码(基于CurrentHour)时,应用程序将不会保存数据

添加_country.xml(我试图从中存储分钟值的计时器选择器所在的位置) DATABASEOPENHELPER.JAVA 附言

我希望在view_country.xml中的同一行上显示CurrentHour和CurrentMinute(如果可能)


如果不是这样的话——仅仅是获得一些传递数据的帮助就太好了!(一旦我弄清楚了为什么数据没有通过,我就会弄清楚剩下的部分)

日志:
03-22 08:41:10.120:D/Activity(9149):Activity.onPause(),editTextTapSensorList大小:0
03-22 08:41:10.240:I/Adreno200 EGLSUB(9149)::格式RGBA_8888。
03-22 08:41:10.240:D/memalloc(9149):离子:映射缓冲区基址:0x5d981000大小:614400偏移量:0 fd:69
03-22 08:41:10.300:D/memalloc(9149):离子:映射缓冲区基址:0x5da29000大小:614400偏移量:0 fd:75
03-22 08:41:10.350:D/memalloc(9149):离子:映射缓冲区基址:0x5debf000大小:614400偏移量:0fd:78
03-22 08:41:10.360:D/memalloc(9149):离子:取消映射缓冲区基:0x5d05e000大小:614400
03-22 08:41:10.360:D/memalloc(9149):离子:取消映射缓冲区基:0x5d12e000大小:614400
03-22 08:41:10.360:D/memalloc(9149):离子:取消映射缓冲区基:0x5d385000大小:614400
03-22 08:41:16.316:E/SQLiteDatabase(9149):插入min=time=41代码=8 cap=name=ttttttt时出错
03-22 08:41:16.316:E/SQLiteDatabase(9149):android.database.sqlite.SQLiteException:表country没有名为min:的列,编译时:插入country(min,time,code,cap,name)值(?,,,,,,?)
03-22 08:41:16.316:E/SQLiteDatabase(9149):在android.database.sqlite.SQLiteCompiledSql.native_compiled(native方法)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteCompiledSql.(SQLiteCompiledSql.java:68)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteProgram.compileSql(SQLiteProgram.java:143)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteProgram.compileAndbindAllArgs(SQLiteProgram.java:361)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteStatement.acquiredandlock(SQLiteStatement.java:260)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:112)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1736)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1609)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于com.nfc.linkingmanager.DatabaseConnector.insertContact(DatabaseConnector.java:42)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于com.nfc.linkingmanager.AddEditCountry.saveContact(AddEditCountry.java:96)
03-22 08:41:16.316:E/SQLiteDatabase(9149):在com.nfc.linkingmanager.AddEditCountry.access$1(AddEditCountry.java:90)
03-22 08:41:16.316:E/SQLiteDatabase(9149):在com.nfc.linkingmanager.AddEditCountry$1.doInBackground(AddEditCountry.java:63)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于android.os.AsyncTask$2.call(AsyncTask.java:264)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于java.util.concurrent.FutureTask.run(FutureTask.java:137)
03-22 08:41:16.316:E/SQLiteDatabase(9149):在android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
03-22 08:41:16.316:E/SQLiteDatabase(9149):位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
03-22 08:41:16.316:E/SQLiteDatabase(9149):at java.lang.Thread.run(Thread.java:856)
03-22 08:41:16.316:D/Activity(9149):Activity.onPause(),editTextTapSensorList大小:0
03-22 08:41:16.336:I/Adreno200 EGLSUB(9149)::格式RGBA_8888。
03-22 08:41:16.347:D/memalloc(9149):离子:映射缓冲区基址:0x5d05e000大小:614400偏移量:0 fd:58
03-22 08:41:16.377:D/memalloc(9149):离子:映射缓冲区基址:0x5d12e000大小:614400偏移量:0 fd:62
03-22 08:41:16.407:D/memalloc(9149):离子:取消映射缓冲区基:0x5d981000大小:614400
03-22 08:41:16.407:D/memalloc(9149):离子:取消映射缓冲区基:0x5da29000大小:614400
03-22 08:41:16.407:D/memalloc(9149):离子:取消映射缓冲区基:0x5debf000大小:614400
03-22 08:41:16.457:D/memalloc(9149):离子:映射缓冲区基址:0x5d385000大小:614400偏移量:0 fd:66
错误很明显。 尝试向不存在的列插入值:

table country has no column named min: , while compiling: INSERT INTO country(min,time,code,cap,name) VALUES (?,?,?,?,?)
请注意使用正确的列定义

    String createQuery = "CREATE TABLE country (_id integer primary key autoincrement,name, cap, code, time, min);";  <==HERE



 public void insertContact(String name, String cap, String code, String time, String min) 
       {
          ContentValues newCon = new ContentValues();
          newCon.put("name", name);
          newCon.put("cap", cap);
          newCon.put("time", time);
          newCon.put("min", min); <== HERE
          newCon.put("code", code);





       public void updateContact(long id, String name, String cap,String code,  String time, String min) 
       {
          ContentValues editCon = new ContentValues();
          editCon.put("name", name);
          editCon.put("cap", cap);
          editCon.put("time", time);
          editCon.put("min", min); <== HERE
          editCon.put("code", code);

String createQuery=“创建表国家(_idinteger主键自动递增、名称、上限、代码、时间、分钟);” 例外情况清楚地表明,
country
表没有
min


SQLiteException:table country没有名为min:的列,在编译时:插入到country(min,time,code,cap,name)值(?,,,,,?,?)

我查看了我的源代码,在软件试图插入数据的任何地方,都有min的值以及其他字段。你看到我没有看到的东西了吗?那不是价值。列的名称错误。“min”不是名字!另外,这篇文章的标题是“我如何保存和显示来自时间选择器的当前分钟数?”您(您自己或社区)对我如何保存和显示当前分钟数有何建议?
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;


public class DatabaseConnector {

private static final String DB_NAME = "WorldCountries";
private SQLiteDatabase database;
private DatabaseOpenHelper dbOpenHelper;

public DatabaseConnector(Context context) {
    dbOpenHelper = new DatabaseOpenHelper(context, DB_NAME, null, 1);
}

   public void open() throws SQLException 
   {
      //open database in reading/writing mode
      database = dbOpenHelper.getWritableDatabase();
   } 

   public void close() 
   {
      if (database != null)
         database.close();
   }       

   public void insertContact(String name, String cap, String code, String time, String min) 
           {
              ContentValues newCon = new ContentValues();
              newCon.put("name", name);
              newCon.put("cap", cap);
              newCon.put("time", time);
              newCon.put("min", min);
              newCon.put("code", code);

              open();
              database.insert("country", null, newCon);
              close();
           }


           public void updateContact(long id, String name, String cap,String code,  String time, String min) 
           {
              ContentValues editCon = new ContentValues();
              editCon.put("name", name);
              editCon.put("cap", cap);
              editCon.put("time", time);
              editCon.put("min", min);
              editCon.put("code", code);

              open();
              database.update("country", editCon, "_id=" + id, null);
              close();
           }


           public Cursor getAllContacts() 
           {
              return database.query("country", new String[] {"_id", "name"}, 
                 null, null, null, null, "name");
           }

           public Cursor getOneContact(long id) 
           {
              return database.query("country", null, "_id=" + id, null, null, null, null);
           }

           public void deleteContact(long id) 
           {
              open(); 
              database.delete("country", "_id=" + id, null);
              close();
           }
}
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class DatabaseOpenHelper extends SQLiteOpenHelper {

public DatabaseOpenHelper(Context context, String name,
        CursorFactory factory, int version) {
    super(context, name, factory, version);
}

@Override
public void onCreate(SQLiteDatabase db) {
    String createQuery = "CREATE TABLE country (_id integer primary key autoincrement,name, cap, code, time, min);";                 
    db.execSQL(createQuery);        
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {

}

}
<TextView 
android:id="@+id/timeEdit"
style="@style/StyleText"/>  
03-22 08:41:10.120: D/Activity(9149): Activity.onPause(), editTextTapSensorList size: 0
03-22 08:41:10.240: I/Adreno200-EGLSUB(9149): <ConfigWindowMatch:2165>: Format RGBA_8888.
03-22 08:41:10.240: D/memalloc(9149): ion: Mapped buffer base:0x5d981000 size:614400 offset:0 fd:69
03-22 08:41:10.300: D/memalloc(9149): ion: Mapped buffer base:0x5da29000 size:614400 offset:0 fd:75
03-22 08:41:10.350: D/memalloc(9149): ion: Mapped buffer base:0x5debf000 size:614400 offset:0 fd:78 
03-22 08:41:10.360: D/memalloc(9149): ion: Unmapping buffer  base:0x5d05e000 size:614400
03-22 08:41:10.360: D/memalloc(9149): ion: Unmapping buffer  base:0x5d12e000 size:614400
03-22 08:41:10.360: D/memalloc(9149): ion: Unmapping buffer  base:0x5d385000 size:614400
03-22 08:41:16.316: E/SQLiteDatabase(9149): Error inserting min= time=41 code=8 cap= name=Tttttsstttt
03-22 08:41:16.316: E/SQLiteDatabase(9149): android.database.sqlite.SQLiteException: table country has no column named min: , while compiling: INSERT INTO country(min,time,code,cap,name) VALUES (?,?,?,?,?)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteCompiledSql.native_compile(Native Method)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteCompiledSql.<init>(SQLiteCompiledSql.java:68)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteProgram.compileSql(SQLiteProgram.java:143)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteProgram.compileAndbindAllArgs(SQLiteProgram.java:361)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteStatement.acquireAndLock(SQLiteStatement.java:260)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:112)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1736)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1609)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at    com.nfc.linkingmanager.DatabaseConnector.insertContact(DatabaseConnector.java:42)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at com.nfc.linkingmanager.AddEditCountry.saveContact(AddEditCountry.java:96)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at  com.nfc.linkingmanager.AddEditCountry.access$1(AddEditCountry.java:90)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at com.nfc.linkingmanager.AddEditCountry$1$1.doInBackground(AddEditCountry.java:63)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.os.AsyncTask$2.call(AsyncTask.java:264)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:208)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
03-22 08:41:16.316: E/SQLiteDatabase(9149):     at java.lang.Thread.run(Thread.java:856)
03-22 08:41:16.316: D/Activity(9149): Activity.onPause(), editTextTapSensorList size: 0
03-22 08:41:16.336: I/Adreno200-EGLSUB(9149): <ConfigWindowMatch:2165>: Format RGBA_8888.
03-22 08:41:16.347: D/memalloc(9149): ion: Mapped buffer base:0x5d05e000 size:614400 offset:0 fd:58
03-22 08:41:16.377: D/memalloc(9149): ion: Mapped buffer base:0x5d12e000 size:614400 offset:0 fd:62
03-22 08:41:16.407: D/memalloc(9149): ion: Unmapping buffer  base:0x5d981000 size:614400
03-22 08:41:16.407: D/memalloc(9149): ion: Unmapping buffer  base:0x5da29000 size:614400
03-22 08:41:16.407: D/memalloc(9149): ion: Unmapping buffer  base:0x5debf000 size:614400
03-22 08:41:16.457: D/memalloc(9149): ion: Mapped buffer base:0x5d385000 size:614400 offset:0 fd:66
table country has no column named min: , while compiling: INSERT INTO country(min,time,code,cap,name) VALUES (?,?,?,?,?)
    String createQuery = "CREATE TABLE country (_id integer primary key autoincrement,name, cap, code, time, min);";  <==HERE



 public void insertContact(String name, String cap, String code, String time, String min) 
       {
          ContentValues newCon = new ContentValues();
          newCon.put("name", name);
          newCon.put("cap", cap);
          newCon.put("time", time);
          newCon.put("min", min); <== HERE
          newCon.put("code", code);





       public void updateContact(long id, String name, String cap,String code,  String time, String min) 
       {
          ContentValues editCon = new ContentValues();
          editCon.put("name", name);
          editCon.put("cap", cap);
          editCon.put("time", time);
          editCon.put("min", min); <== HERE
          editCon.put("code", code);