小编Rob*_*ond的帖子

如何计算两个时间字段之间的时间差,相对于日期更改

我想计算时差.我有三个EditTexts,我想在HH:MM格式的前两个edittexts中输入时间.然后计算时差,结果将以相同的格式显示在第三个edittext字段上.如果日期改变,时间差将根据该计算,即

如果第一次= 23:00,第二次= 01:00

那么,时差= 02:00小时

public class TimeCalculate extends Activity {

    private String mBlock;
    private String mBlockoff;
    private String mBlockon ;

    // String mHours, mMinutes;

    Date date1, date2;

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        EditText blockoff = (EditText) findViewById(R.id.blockoff);
        mBlockoff = blockoff.getText().toString();

        EditText blockon = (EditText) findViewById(R.id.blockon);
        mBlockon = blockon.getText().toString();

        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("hh:mm");

        try {
            date1 = simpleDateFormat.parse(mBlockoff);
        } catch (ParseException e) {
            // TODO Auto-generated …
Run Code Online (Sandbox Code Playgroud)

android

6
推荐指数
1
解决办法
2万
查看次数

通过Intent在类之间发送变量

我在使用Intent导航屏幕时遇到问题.我想发送一个变量并在其他类中使用它.

我正在使用一个方法,该方法接受变量,但我不知道如何将其与意图发送到新屏幕,这将使用它来做一些事情.

主类调用metod:

private void pantallaDetalles(final int identificador)
{
     startActivityForResult(new Intent(this,MostrarDetalles.class),REQST_CODE);
}
Run Code Online (Sandbox Code Playgroud)

MostrarDetalles.class是*.java,它将获取变量.我这样开头:

public class MostrarDetalles extends Activity {

    SQLiteDatabase db;

    public void onCreate(Bundle savedInstanceState)
        {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.detalles);


         //more code...


         Cursor c = db.rawQuery("SELECT * FROM table WHERE _id="+ identificador, null);

        }
Run Code Online (Sandbox Code Playgroud)

你看到吗?我在说这个.我不知道如何通过Intent将"identify"变量从主类发送到第二类.

你能帮帮我吗?非常感谢你的建议.

JMasia.

variables android class android-intent

6
推荐指数
2
解决办法
1万
查看次数

Jackson序列化配置

我在 Spring 3 MVC 应用程序中使用 Jackson JSON。为了不序列化每个日期字段,我创建了一个使用特定日期格式的自定义对象映射器:

@Component("jacksonObjectMapper")
public class CustomObjectMapper extends ObjectMapper
{
    Logger log = Logger.getLogger(CustomObjectMapper.class);

    @PostConstruct
    public void afterProps()
    {
        log.info("PostConstruct... RUNNING");
        //ISO 8601
        getSerializationConfig().setDateFormat(new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SZ"));


    }

    //constructors...

}
Run Code Online (Sandbox Code Playgroud)

这个自定义的 ObjectMapper 被注入到 JsonConverter 中:

<bean id="jsonConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter">
    <property name="supportedMediaTypes" value="application/json" />
    <property name="objectMapper" ref="jacksonObjectMapper" /> <!-- defined in CustomObjectMapper -->
</bean>
Run Code Online (Sandbox Code Playgroud)

日志和序列化工作没有例外,但它没有选择日期格式,它简单地序列化为时间戳。@PostConstruct注解起作用了,方法中的日志语句在日志中。

有谁知道为什么会失败?

spring json jackson

5
推荐指数
1
解决办法
3万
查看次数

设置hibernate二级缓存

我是hibernate和spring的新手,我尝试使用hibernate二级缓存.但它似乎不起作用.我有一个以下测试类:

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = { "classpath:applicationContext.xml" })
@TransactionConfiguration
@Transactional
public class CacheTest extends AbstractTransactionalJUnit4SpringContextTests
{   
    @Test
        public void testCache1() 
        {
        System.out.println("Running testCache1");
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        MutableDAO<AppUser> appUserDAO = new MutableDAOImpl<AppUser>(AppUser.class, (SessionFactory) ctx.getBean("OnMediaSessionFactory"), 10);
        assertNotNull("AppUser DAO is null.", appUserDAO);

        SessionFactory sessionFactory = (SessionFactory)ctx.getBean("OnMediaSessionFactory");
        long numberOfUsers = appUserDAO.countAll();

        System.out.println("Number of rows :" + numberOfUsers);
        final String cacheRegion = AppUser.class.getCanonicalName();

        SecondLevelCacheStatistics settingsStatistics = sessionFactory.getStatistics().
            getSecondLevelCacheStatistics(cacheRegion);
        StopWatch stopWatch = new StopWatch();
        stopWatch.start();
        appUserDAO.findAll();
        stopWatch.stop();
        System.out.println("Query time : " + stopWatch.getTotalTimeSeconds());
        System.out.println(settingsStatistics);
     } …
Run Code Online (Sandbox Code Playgroud)

spring hibernate second-level-cache

5
推荐指数
1
解决办法
2660
查看次数

Drawable.setColorFilter()无法在Android 2.1上运行

Drawable d = new BitmapDrawable(BitmapFactory.decodeResource(
    getResources(), R.drawable.ic_watch));
d.setColorFilter(new LightingColorFilter(color, lightenColor));
imageView.setImageDrawable(d);
Run Code Online (Sandbox Code Playgroud)

在Android 2.2(模拟器)和2.3(N1)上setColorFilter()工作正常.为什么它不适用于2.1(在模拟器上测试)?另一个Android bug?

android

5
推荐指数
1
解决办法
3133
查看次数

正则表达式匹配和限制字符类

我不确定使用Regex是否可行,但我希望能够根据不同的字符限制允许的下划线数量.这是为了将疯狂的通配符限制限制为用Java编写的搜索引擎.

起始字符是字母数字.但是如果有更多的下划线而不是前面的字符,我基本上想要一个匹配.所以

BA_会很好但是BA___会匹配正则表达式并且会被踢出查询解析器.

这可能使用正则表达式吗?

java regex

5
推荐指数
1
解决办法
949
查看次数

将字符串数组转换为长数组

我想将Info_TimeD1[]字符串数组中的值转换为长数组并存储在ohh[].I中发现错误,我无法通过这种情况.

String[] Info_TimeD1;  
String[] ohh;
int i;

int L1 = Info_TimeD1.length;

    for(int i=0;i<L1;i++)
{
     Long Timestamp1[i] = Long.parseLong(Info_TimeD1[i]); // error this line
     ohh[i] = getDateCurrentTimeZone1(Timestamp1[i]);
}
Run Code Online (Sandbox Code Playgroud)

java long-integer

2
推荐指数
2
解决办法
7226
查看次数

Javascript函数未被调用

我试图在我的mvc视图上调用脚本函数,如下所示.但它没有发生.它背后可能是什么原因?

<input type="text" id="hdnTemp" value="xyz" onload="test();" />                    
                    <script type="text/javascript">
                      function test() {
                        alert();
                      }
                    </script>
Run Code Online (Sandbox Code Playgroud)

谢谢,卡皮尔

javascript javascript-events

1
推荐指数
1
解决办法
83
查看次数

Android开发 - 数据库插入的空指针异常

好吧,我一直在开发一个简单的应用程序,允许用户将注释保存到联系人.它列出了手机中的联系人.用户单击联系人,并显示基于联系人ID与联系人相关的备注条目.然后,用户可以通过"菜单">"添加备注"添加新备忘.我可以通过应用程序获得所有内容,但它不会将表单中输入的数据保存到数据库中.当我尝试保存时,我得到一个空指针异常.什么都没有崩溃,它只是返回到之前的活动,并没有做任何事情.我对编程很陌生,并且在过去的一周半里一直在教自己的android,所以它可能非常简单.我一直在网上挖掘,经常来到Stack Overflow来检查答案,但似乎无法找到任何关于这个的东西.另外,我不确定需要什么代码,所以我只是发布我的表单活动和dbadapter的代码.在此先感谢您的帮助!

这是用于输入数据的活动:

package com.onyx.formapp23;

import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

import com.onyx.formapp23.MyDbAdapter;

public class FormsNewNote extends Activity {
    String mIntentString;
    int contactId;
    EditText contactIdEdit, titleEdit, bodyEdit;
    long dateTimeValue;
    Button submitBtn, discardBtn;
    private MyDbAdapter db = null;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.forms_newnote);
        Bundle extras = getIntent().getExtras();
        mIntentString = extras.getString("contactId");
        db = new MyDbAdapter(this);
        contactIdEdit = (EditText) findViewById(R.id.noteFormContactId);
        contactIdEdit.setText(mIntentString);
        contactId = Integer.parseInt(mIntentString);
        titleEdit = (EditText) findViewById(R.id.noteFormTitle);
        bodyEdit = …
Run Code Online (Sandbox Code Playgroud)

java sql sqlite android

1
推荐指数
1
解决办法
5345
查看次数

调用StartActivity时获取空白屏幕()

在此先感谢您的努力.

我有一个围绕ListActivity扩展类的应用程序.在应用程序启动之前,我想检查用户是否已注册,如果没有告诉他并从他那里获得一些信息.所以,我试图在OnCreate()方法中调用StartActivity.当它加载时,我得到了一个大黑屏.我认为它可能与在OnCreate中运行有关,所以我让Activity像往常一样启动,我试图在OnClick事件中运行它,我得到了相同的结果.在这两种情况下,如果我按下escape,那个Window就会消失,主应用程序窗口会回来.

以下是我称之为新活动的行

Intent emailIntent = new Intent(this, EmailAddressGetter.class);
this.startActivity(emailIntent);
Run Code Online (Sandbox Code Playgroud)

这是该类的代码

/**
 * 
 */
package com.kosherapp;

import android.app.Activity;
import android.os.Bundle;
import android.widget.Toast;

/**
 * @author Josh
 * 
 */
public class EmailAddressGetter extends Activity {

    public void OnCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.emailinput);
    }

}
Run Code Online (Sandbox Code Playgroud)

这是emailinput xml内容

<?xml version="1.0" encoding="utf-8"?>
<TextView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:background="#ffffff"
    android:textColor="#000000"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:text="hello"
>
</TextView>
Run Code Online (Sandbox Code Playgroud)

而且,这是明确的内容

<?xml version="1.0" encoding="utf-8"?>
<manifest
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.kosherapp"
    android:versionCode="1"
    android:versionName="1.0"
>
    <uses-permission
        android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission
        android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission
        android:name="android.permission.INTERNET" />
    <uses-permission
        android:name="android.permission.CALL_PHONE" />

    <application …
Run Code Online (Sandbox Code Playgroud)

android android-manifest android-emulator android-layout

0
推荐指数
1
解决办法
3441
查看次数