Будьте в спящем режиме группа временным интервалом

Я думаю, что лучший способ достичь того, что вы пытаетесь сделать, - это использовать ограничения. Вместо того, чтобы определять, какое устройство использует пользователь, вы должны установить надлежащие ограничения, чтобы ваше приложение можно было загружать и воспроизводить на ЛЮБОМ устройстве. https://developer.apple.com/library/archive/documentation/UserExperience/Conceptual/AutolayoutPG/ProgrammaticsCreatingConstraints.html .

Лучше всего, чтобы приложение было доступно для просмотра на многих устройствах, и лучший способ добиться этого - использовать ограничения. У Xcode есть «варьировать по чертам», что позволяет вам изменять ограничения в зависимости от ширины и высоты экрана! https://www.idev101.com/code/User_Interface/sizes.html . пример на различных экранах ширины и высоты (не включает в себя ipads)

Что такое «Vary for Traits» в Xcode 8?

здесь ссылка на переменную для черт, я надеюсь, что это помогает

6
задан TMS 17 April 2012 в 20:13
поделиться

2 ответа

Я попытался решить ту же проблему. Я должен сгруппировать данные 2-часовым интервалом в течение одного дня. На самом деле, "чистый" В спящем режиме, как, предполагается, не используется этот путь. Таким образом, я добавил собственную проекцию SQL к критериям Hibernate. Для Вашего случая это могло быть похожим на это (я использую синтаксис MySQL и функции):

int hours = 2; // 2-hours interval

Criteria criteria = session.createCriteria( MyClass.class )
            .add( Restrictions.ge( "dataTs", start ) )
            .add( Restrictions.le( "dataTs", end ) );


ProjectionList projList = Projections.projectionList();
        projList.add( Projections.max( "value1" ) );
        projList.add( Projections.avg( "value2" ) );
        projList.add( Projections.sqlGroupProjection(
            String.format( "DATE_ADD( DATE( %s_.dataTs ), INTERVAL( HOUR( %s_.dataTs ) - HOUR( %s_.dataTs) %% %d ) HOUR) as hourly", criteria.getAlias(), criteria.getAlias(), criteria.getAlias(), hours ),
            String.format( "DATE_ADD( DATE( %s_.dataTs ), INTERVAL( HOUR( %s_.dataTs) - HOUR( %s_.dataTs ) %% %d ) HOUR)", criteria.getAlias(), criteria.getAlias(), criteria.getAlias(), hours ),
            new String[]{ "hourly" },
            new Type[]{ Hibernate.TIMESTAMP } )
        );
        criteria.setProjection( projList );

List results = criteria
            .setCacheable( false )
            .list();

Код выглядит немного ужасным, но он решает проблему. Надеюсь, что общее представление будет полезно для Вас.

9
ответ дан 9 December 2019 в 20:50
поделиться

Будьте в спящем режиме для отображения между графиком объектов (объекты и типами значения) и их представление в реляционной базе данных.

Из Вашего описания вопроса Вы действительно не упоминаете объектов, которые Вы моделируете, таким образом, я предложил бы раскрыться в собственный SQL-запрос.

http://www.hibernate.org/hib_docs/reference/en/html/querysql.html

Возможно, при регистрации структуры таблицы это может дать больше контекста для вопроса?

3
ответ дан 9 December 2019 в 20:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: