Java 计时器选择器在SQLite数据库中保存零值
我有一个时间选择器,我想用它来确定用户可以保持连接的时间长度。假设现在的时间是10:00,如果用户选择11:00(我希望下面的源代码确定当前时间与选择的时间之间有60分钟),并将其设置为字符串/长(分钟),然后显示为文本视图 我已经按照我认为应该的方式对所有内容进行了编码-但是textview似乎从未使用分钟值进行更新。每次我试图查看数据时,无论时间选择器设置为什么,我都会得到一个值0 有人有什么建议吗?我现在被难住了,我不知道还能尝试什么 ADDEDITDEVICE.JAVA(时间选择器和分钟确定发生的位置)Java 计时器选择器在SQLite数据库中保存零值,java,android,database,sqlite,Java,Android,Database,Sqlite,我有一个时间选择器,我想用它来确定用户可以保持连接的时间长度。假设现在的时间是10:00,如果用户选择11:00(我希望下面的源代码确定当前时间与选择的时间之间有60分钟),并将其设置为字符串/长(分钟),然后显示为文本视图 我已经按照我认为应该的方式对所有内容进行了编码-但是textview似乎从未使用分钟值进行更新。每次我试图查看数据时,无论时间选择器设置为什么,我都会得到一个值0 有人有什么建议吗?我现在被难住了,我不知道还能尝试什么 ADDEDITDEVICE.JAVA(时间选择器和分钟
公共类AddEditDevice扩展活动{
私人长罗威德;
私有编辑文本名称;
私人编辑文本capEt;
私人编辑文本代码集;
私人计时器;
私有文本视图ssidTextView;
日期=新日期();
时间选择器;
//@覆盖
创建时的公共void(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.add_country);
WifiManager wifi=(WifiManager)getSystemService(Context.wifi\u SERVICE);
WifiInfo=wifi.getConnectionInfo();
字符串ssidString=info.getSSID();
if(ssidString.startsWith(“\”)和&ssidString.endsWith(“\”){
ssidString=ssidString.substring(1,ssidString.length()-1);
//TextView ssidTextView=(TextView)findViewById(R.id.wifiSSID);
ssidTextView=(TextView)findViewById(R.id.wifiSSID);
ssidTextView.setText(ssidString);
nameEt=(EditText)findViewById(R.id.nameEdit);
capEt=(EditText)findViewById(R.id.capEdit);
codeEt=(EditText)findViewById(R.id.codeEdit);
timeEt=(TimePicker)findviewbyd(R.id.timeEdit);
Bundle extras=getIntent().getExtras();
如果(附加值!=null)
{
rowID=extras.getLong(“row_id”);
setText(extras.getString(“name”);
capEt.setText(附加getString(“cap”);
codeEt.setText(extras.getString(“代码”);
字符串时间=extras.getString(“时间”);
String[]parts=time.split(“:”);
timeEt.setCurrentHour(整数值为[0]);
timeEt.setCurrentMinute(整数值of(第[1]部分));
timeEt.setIs24HourView(假);
date.setMinutes(tp.getCurrentMinutes());
date.setHours(tp.getCurrentHour());
长.toString(分钟);
}
按钮saveButton=(按钮)findViewById(R.id.saveBtn);
saveButton.setOnClickListener(新的OnClickListener(){
公共void onClick(视图v)
{
if(nameEt.getText().length()!=0)
{
AsyncTask saveContactTask=
新建异步任务()
{
@凌驾
受保护对象doInBackground(对象…参数)
{
saveContact();
返回null;
}
@凌驾
受保护的void onPostExecute(对象结果)
{
完成();
}
};
saveContactTask.execute((Object[])null;
}
其他的
{
AlertDialog.Builder alert=新建AlertDialog.Builder(AddEditDevice.this);
alert.setTitle(R.string.errorTitle);
alert.setMessage(R.string.errorMessage);
alert.setPositiveButton(R.string.errorButton,null);
alert.show();
}
}
});}
}
长分钟=((新日期()).getTime()-Date.getTime())/(1000*60);
私有void saveContact()
{
DatabaseConnector dbConnector=新的DatabaseConnector(此);
if(getIntent().getExtras()==null)
{
//Log.i(“测试为空”,“测试为+dbConnector+”+nameEt+“”+capEt+“”+timeEt+“”+codeEt+“”+ssidTextView);
dbConnector.insertContact(nameEt.getText().toString(),
capEt.getText().toString(),
timeEt.getCurrentHour().toString()+“:”
+timeEt.getCurrentMinute().toString(),
codeEt.getText().toString(),
长.toString(分钟),
ssidTextView.getText().toString());
}
其他的
{
dbConnector.updateContact(rowID,
nameEt.getText().toString(),
capEt.getText().toString(),
timeEt.getCurrentHour().toString()+“:”
+timeEt.getCurrentMinute().toString(),
codeEt.getText().toString(),
长.toString(分钟),
ssidTextView.getText().toString());
}
}
}
VIEW COUNTRY.JAVA(其中时间选择器设置的分钟数据应可见)
公共类ViewCountry扩展了NfcBeamWriterActivity{
私有静态最终字符串标记=ViewCountry.class.getName();
受保护的消息;
NfcAdapter mNfcAdapter;
私有静态最终int消息_SENT=1;
私人长罗威德;
私有文本视图名称电视;
私有文本视图capTv;
私有文本视图代码电视;
私人文本视图时间电视;
普里瓦
public class AddEditDevice extends Activity {
private long rowID;
private EditText nameEt;
private EditText capEt;
private EditText codeEt;
private TimePicker timeEt;
private TextView ssidTextView;
Date date = new Date();
TimePicker tp;
// @Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.add_country);
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
String ssidString = info.getSSID();
if (ssidString.startsWith("\"") && ssidString.endsWith("\"")){
ssidString = ssidString.substring(1, ssidString.length()-1);
//TextView ssidTextView = (TextView) findViewById(R.id.wifiSSID);
ssidTextView = (TextView) findViewById(R.id.wifiSSID);
ssidTextView.setText(ssidString);
nameEt = (EditText) findViewById(R.id.nameEdit);
capEt = (EditText) findViewById(R.id.capEdit);
codeEt = (EditText) findViewById(R.id.codeEdit);
timeEt = (TimePicker) findViewById(R.id.timeEdit);
Bundle extras = getIntent().getExtras();
if (extras != null)
{
rowID = extras.getLong("row_id");
nameEt.setText(extras.getString("name"));
capEt.setText(extras.getString("cap"));
codeEt.setText(extras.getString("code"));
String time = extras.getString("time");
String[] parts = time.split(":");
timeEt.setCurrentHour(Integer.valueOf(parts[0]));
timeEt.setCurrentMinute(Integer.valueOf(parts[1]));
timeEt.setIs24HourView(false);
date.setMinutes(tp.getCurrentMinute());
date.setHours(tp.getCurrentHour());
Long.toString(minutes);
}
Button saveButton =(Button) findViewById(R.id.saveBtn);
saveButton.setOnClickListener(new OnClickListener() {
public void onClick(View v)
{
if (nameEt.getText().length() != 0)
{
AsyncTask<Object, Object, Object> saveContactTask =
new AsyncTask<Object, Object, Object>()
{
@Override
protected Object doInBackground(Object... params)
{
saveContact();
return null;
}
@Override
protected void onPostExecute(Object result)
{
finish();
}
};
saveContactTask.execute((Object[]) null);
}
else
{
AlertDialog.Builder alert = new AlertDialog.Builder(AddEditDevice.this);
alert.setTitle(R.string.errorTitle);
alert.setMessage(R.string.errorMessage);
alert.setPositiveButton(R.string.errorButton, null);
alert.show();
}
}
});}
}
long minutes = ((new Date()).getTime() - date.getTime()) / (1000 * 60);
private void saveContact()
{
DatabaseConnector dbConnector = new DatabaseConnector(this);
if (getIntent().getExtras() == null)
{
// Log.i("Test for Null", ""+dbConnector+" "+nameEt+" "+capEt+" "+timeEt+" "+codeEt+" "+ssidTextView);
dbConnector.insertContact(nameEt.getText().toString(),
capEt.getText().toString(),
timeEt.getCurrentHour().toString() + ":"
+ timeEt.getCurrentMinute().toString(),
codeEt.getText().toString(),
Long.toString(minutes),
ssidTextView.getText().toString());
}
else
{
dbConnector.updateContact(rowID,
nameEt.getText().toString(),
capEt.getText().toString(),
timeEt.getCurrentHour().toString() + ":"
+ timeEt.getCurrentMinute().toString(),
codeEt.getText().toString(),
Long.toString(minutes),
ssidTextView.getText().toString());
}
}
}
public class ViewCountry extends NfcBeamWriterActivity {
private static final String TAG = ViewCountry.class.getName();
protected Message message;
NfcAdapter mNfcAdapter;
private static final int MESSAGE_SENT = 1;
private long rowID;
private TextView nameTv;
private TextView capTv;
private TextView codeTv;
private TextView timeTv;
private TextView ssidTv;
private TextView combined;
private TextView minutes;
//String timetest = "300";
// String a="\"";
// String b="\"";
// String message1 = a + ssidTv.getText().toString() +"," +
// capTv.getText().toString()+b;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.view_country);
SharedPreferences prefs=getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor=prefs.edit();
editor.putBoolean("name", true);
editor.putBoolean("cap", true);
editor.putBoolean("code", true);
editor.putBoolean("time", true);
editor.putBoolean("ssid",true);
editor.putBoolean("minutes",true);
editor.putBoolean("timetest",true);
editor.commit();
setDetecting(true);
startPushing();
setUpViews();
Bundle extras = getIntent().getExtras();
rowID = extras.getLong(CountryList.ROW_ID);
}
private void setUpViews() {
nameTv = (TextView) findViewById(R.id.nameText);
capTv = (TextView) findViewById(R.id.capText);
timeTv = (TextView) findViewById(R.id.timeEdit);
codeTv = (TextView) findViewById(R.id.codeText);
ssidTv = (TextView) findViewById(R.id.wifiSSID);
minutes = (TextView) findViewById(R.id.Minutes);
}
@Override
protected void onResume() {
super.onResume();
new LoadContacts().execute(rowID);
}
private class LoadContacts extends AsyncTask<Long, Object, Cursor> {
DatabaseConnector dbConnector = new DatabaseConnector(ViewCountry.this);
@Override
protected Cursor doInBackground(Long... params) {
dbConnector.open();
return dbConnector.getOneContact(params[0]);
}
@Override
protected void onPostExecute(Cursor result) {
super.onPostExecute(result);
result.moveToFirst();
int nameIndex = result.getColumnIndex("name");
int capIndex = result.getColumnIndex("cap");
int codeIndex = result.getColumnIndex("code");
int timeIndex = result.getColumnIndex("time");
int ssidIndex = result.getColumnIndex("ssid");
nameTv.setText(result.getString(nameIndex));
capTv.setText(result.getString(capIndex));
timeTv.setText(result.getString(timeIndex));
codeTv.setText(result.getString(codeIndex));
ssidTv.setText(result.getString(ssidIndex));
result.close();
dbConnector.close();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.view_country_menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.editItem:
Intent addEditContact = new Intent(this, AddEditDevice.class);
// addEditContact.putExtra(CountryList.ROW_ID, rowID);
// addEditContact.putExtra("name", nameTv.getText());
// addEditContact.putExtra("cap", capTv.getText());
// addEditContact.putExtra("code", codeTv.getText());
startActivity(addEditContact);
return true;
case R.id.user1SettingsSave:
Intent Tap = new Intent(this, Tap.class);
startActivity(Tap);
return true;
case R.id.deleteItem:
deleteContact();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
private void deleteContact() {
AlertDialog.Builder alert = new AlertDialog.Builder(ViewCountry.this);
alert.setTitle(R.string.confirmTitle);
alert.setMessage(R.string.confirmMessage);
alert.setPositiveButton(R.string.delete_btn,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int button) {
final DatabaseConnector dbConnector = new DatabaseConnector(
ViewCountry.this);
AsyncTask<Long, Object, Object> deleteTask = new AsyncTask<Long, Object, Object>() {
@Override
protected Object doInBackground(Long... params) {
dbConnector.deleteContact(params[0]);
return null;
}
@Override
protected void onPostExecute(Object result) {
finish();
}
};
deleteTask.execute(new Long[] { rowID });
}
});
alert.setNegativeButton(R.string.cancel_btn, null).show();
}
}
dbConnector.insertContact(nameEt.getText().toString(),
capEt.getText().toString(),
timeEt.getCurrentHour().toString() + ":" + timeEt.getCurrentMinute().toString(),
codeEt.getText().toString(),
minutes,
Long.toString(minutes),
ssidTextView.getText().toString());
public void insertContact(String name,
String cap,
String code,
String time,
long minutes,
String ssid,
String string){