问题列表 - 第43252页

float:在objective-c中左侧

我试图让一堆按钮表现得像浮动一样:留在CSS中.因此,每当视图改变大小时,例如,在方向改变时,应调整按钮以使它们适合其容器视图.

在横向模式下,此UIScrollView应水平滚动,在纵向模式下,它应垂直滚动.

我正在尝试制作类似于iPad YouTube应用中"特色"标签的ScrollView.景观有4列,纵向:3列,"订阅"标签,纵向,同一视图有2列.

替代文字

cocoa-touch objective-c interface-builder ipad

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

如何从传入的整数和id中获取NSDate?

这让我疯了,所以我希望有人可以帮助Objective-C noob解决这个问题.这是交易:

我正在使用Titanium Appcelerator开发iPhone应用程序,我正在尝试在XCode中创建一个附加模块,允许我将事件发送到iPhone日历.我想做的是按照自2001年1月1日(格林威治标准时间)以来的秒数计算日期和时间,并将其直接发送到日历,而不必弄乱看起来总是返回的字符串到目前为止的东西.不合时机.到目前为止,我无法将整数存入事件日期字段,这两个字段都是NSDate类型.

Titanium从Javascript获取参数并将其编译为目标代码,因此我可以像这样调用我的"cal"对象:

var startDate = 316367923;
var endDate = 316367923;    
var results = cal.newEvent(startTime,endTime)
Run Code Online (Sandbox Code Playgroud)

...这就是"cal"对象接收该调用的方式:

-(BOOL)newEvent:(id)args {
    id startDate = [args objectAtIndex:0];
    id endDate = [args objectAtIndex:1];
    ...
Run Code Online (Sandbox Code Playgroud)

我希望做的是将这些整数放入事件对象:

EKEventStore *eventDB = [[EKEventStore alloc] init];
EKEvent *theEvent  = [EKEvent eventWithEventStore:eventDB];
...
theEvent.startDate = [[NSDate alloc] initWithTimeIntervalSinceReferenceDate: (int) startDate];
theEvent.endDate   = [[NSDate alloc] initWithTimeIntervalSinceReferenceDate: (int) endDate];
Run Code Online (Sandbox Code Playgroud)

这编译没有任何错误,但导致我的应用程序爆炸,所以我想我的理解中缺少一些东西.我知道哪里出错了?

谢谢,

标记

iphone casting objective-c nsdate

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

请说明如何针对聚合根的子实体进行创建/更新

经过多次阅读和思考,我开始把头脑包裹在DDD之后,我对在聚合根下处理复杂层次结构的最佳实践感到困惑.我认为这是一个FAQ,但在阅读了无数的例子和讨论之后,没有人在谈论我所看到的问题.

如果我与DDD思想保持一致,那么聚合根下面的实体应该是不可变的.这是我的麻烦的关键,所以如果这不正确,那就是我失败的原因.

这是一个捏造的例子......希望它有足够的水来讨论.

考虑汽车保险政策(我不是保险,但这与我在保险公司打电话时听到的语言相符).

政策显然是一个实体.在政策中,假设我们有自动.出于此示例的目的,Auto仅存在于策略中(可能您可以将Auto转移到另一个策略,因此这也可能是聚合,这会更改策略...但是假设它比现在更简单) .由于没有策略,Auto不能存在,我认为它应该是实体而不是根.因此,在这种情况下,策略是聚合根.

现在,要创建一个策略,我们假设它必须至少有一个自动.这是我感到沮丧的地方.假设Auto相当复杂,包括许多字段,也许是一个儿童用于车库的位置(位置).如果我理解正确,"创建策略"构造函数/工厂必须将Auto作为输入或通过构建器限制,以便在没有此Auto的情况下创建.并且Auto的创建,因为它是一个实体,不能事先完成(因为它是不可变的?也许这只是一个不正确的解释).所以你不要说新的Auto然后setX,setY,add(Z).

如果Auto不仅仅是微不足道的,那么您最终必须构建一个庞大的构建器层次结构,以便尝试在策略的上下文中管理创建Auto.

稍后,在创建策略并且希望添加另一个Auto ...或更新现有Auto之后,还有一个问题.很明显,政策控制了这个...很好......但是Policy.addAuto()不会完全飞行,因为一个人不能只传入一个新的Auto(对!!).例子说像Policy.addAuto(VIN,make,model等),但都很简单,看起来很合理.但是如果这种工厂方法方法因参数太多而分崩离析(整个Auto接口,可以想象)我需要一个解决方案.

从我的思考中,我意识到对一个实体进行瞬态引用是可以的.所以,也许在瞬态环境中在聚合体之外创建一个实体是可以的,所以也许可以这样说:

auto = AutoFactory.createAuto(); auto.setX auto.setY

或者如果坚持不变性,AutoBuilder.new().setX().setY().build()

当你说Policy.addAuto(auto)时它会被整理出来

如果您添加事件,例如带有PolicyReports或RepairEstimates的事故......某些值对象,但大多数实体在策略之外都没有任何意义,这个保险示例会变得更有趣......至少对于我的简单示例.

政策的生命周期随着时间的推移逐渐增加,这似乎是我在真正开始挖掘之前必须绘制的基本图景......而且更多的是工厂概念或子实体如何构建/附加到我没有的聚合根看到了一个坚实的例子.

我想我很亲密.希望这是明确的,而不仅仅是重复的常见问题解答,它在各处都有答案.

domain-driven-design

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

如果关系数据库的正式设计方法是实体关系图,那么NOSQL数据库的方法是什么?

我是数据库设计的新手.据我所知,我们使用Entity-Relationship Diagram来帮助设计关系数据库.

如果关系数据库的正式设计方法是ERD,那么NOSQL数据库的方法是什么?

database-design nosql

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

如何运行git log以查看仅针对特定分支的更改?

我有一个跟踪远程/主分支的本地分支.运行后git-pullgit-log,日志将显示在远程追踪分支的所有提交以及当前分支.但是,因为对远程分支进行了如此多的更改,我只需要查看对当前本地分支的提交.

用于仅显示特定分支的提交的Git命令是什么?

笔记:

配置信息:

[branch "my-branch"]
  remote = origin
  merge = refs/heads/master
Run Code Online (Sandbox Code Playgroud)

git branch git-log git-branch

350
推荐指数
5
解决办法
24万
查看次数

如何从FullCalendar中删除此事件?

日历允许用户将时间段拖到日历上,但我希望他们能够在点击它时将其删除.

所以在eventClick我有这个功能:

function (calEvent) {
  removeRequestedEvent($(this), calEvent);
},
Run Code Online (Sandbox Code Playgroud)

它只是传递日历事件和日历本身.

removeRequestedBooking: function (cal, calEvent) {
    if (!confirm("Delete?"))
        return;

    cal.fullCalendar("removeEvents", calEvent.id);
    cal.fullCalendar("rerenderEvents");

    // Re-show draggable element
    $("#requests #" + calEvent.id).show();
}
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用过滤器,但是返回语句中的断点永远不会被击中.

    cal.fullCalendar("removeEvents", function (event) {
        return event.id == calEvent.Id;
    });
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?(我知道Id是对的,最后一行有效).Firebug在javascript中没有显示任何错误.

我正在使用FullCalendar v1.4.10

javascript jquery fullcalendar

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

包含名为"by"的术语的Visual Studio表达式无法在监视窗口中进行评估

考虑下面的C++代码:

int _tmain(int argc, _TCHAR* argv[])
{
    int by = 10;
    printf("%d\n", by);

    int bx = 20;
    printf("%d\n", (by + bx));

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

哪个工作正常.有趣的是"by"变量.如果我尝试为包含by的简单表达式添加监视,则结果将为CXX0030:错误:无法计算表达式.

例如,在断点上return 0,如果我添加以下手表,我会得到提到的结果:

by : 10
bx : 20
by + 5 : CXX0030: Error: expression cannot be evaluated
bx + 5 : 25
by + bx : CXX0030: Error: expression cannot be evaluated
(by) + bx : 30
by + (bx) : CXX0030: Error: expression cannot be evaluated
bx + (by) : CXX0014: …
Run Code Online (Sandbox Code Playgroud)

c++ watch visual-studio-debugging

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

bst红黑不起作用

这有什么问题?

// rbt.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"

#ifndef rbth
#define rbth

typedef enum {
    RBT_STATUS_OK,
    RBT_STATUS_MEM_EXHAUSTED,
    RBT_STATUS_DUPLICATE_KEY,
    RBT_STATUS_KEY_NOT_FOUND
} RbtStatus;

typedef void *RbtIterator;
typedef void *RbtHandle;

RbtHandle rbtNew(int(*compare)(void *a, void *b));
// create red-black tree
// parameters:
//     compare  pointer to function that compares keys
//              return 0   if a == b
//              return < 0 if a < b
//              return > 0 if a > b
// returns:
//     handle …
Run Code Online (Sandbox Code Playgroud)

c++ binary-tree

-2
推荐指数
1
解决办法
336
查看次数

Windows上的本机窄字符串编码是什么?

Subversion API具有许多功能,用于将"本机编码"字符串转换为以UTF-8编码的字符串.我的问题是:Windows上的本机编码是什么?它取决于区域设置吗?

c c++ string winapi character-encoding

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

Java - 什么是<>使用的,它的名字是什么?

我正在研究一些示例代码然后出现了:

public abstract class RandomPool<T> extends Pool {
     //Class...
}
Run Code Online (Sandbox Code Playgroud)

什么<>用的?为什么只是T在这些内部?对我来说这似乎是随机的.但是,如何在更长的制作程序的角度使用它呢?

谢谢,告诉我是否需要添加更多细节!

java generics

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