使用新的iOS7 UIView色调,可以快速主题化整个应用程序.它甚至在编辑UITextFields时会改变文本插入符的颜色.
但是,键盘右下方的"关闭"按钮(可以是"完成","搜索"等)始终为蓝色.有没有办法改变这个?如果它与应用程序其余部分的色调相匹配,那将会非常好看.
我知道在使用Task
s 时如何处理无法处理的异常,如果用户代码尚未"观察"它,则仅在终结器中抛出未处理的异常.
我也知道如何Action.BeginInvoke()
在加入调用中捕获并重新抛出异步线程(例如)中的未处理异常(例如Action.EndInvoke()
).
我不明白的是,这不会导致这个过程崩溃的原因是什么?
static void Main(string[] args)
{
var timer = new System.Timers.Timer() {Interval = 100};
timer.Elapsed += (o, e) => { throw new Exception(); };
timer.Start();
Console.ReadKey( true );
}
Run Code Online (Sandbox Code Playgroud) 例如,考虑一下:
public IDisposable Subscribe<T>(IObserver<T> observer)
{
return eventStream.Where(e => e is T).Cast<T>().Subscribe(observer);
}
Run Code Online (Sandbox Code Playgroud)
这eventStream
是一个长期存在的事件来源.一个短命的客户端将使用此方法订阅一段时间,然后通过调用Dispose
返回来取消订阅IDisposable
.
然而,虽然eventStream
仍然存在并且应该保存在内存中,但是已经有2个新IObservables
方法由此方法创建 - 由方法返回的Where()
方法可能由内存保存在内存中eventStream
,并且方法返回的方法可能保留在内存Cast<T>()
中内存由Where()
方法返回的内存.
这些'中间IObservables'(它们有更好的名字吗?)将如何清理?或者它们现在是否会存在,eventStream
即使它们不再有订阅而没有其他人引用它们除了它们的来源IObservable
,因此永远不会再有订阅?
如果他们通过告知他们的父母他们不再有订阅来清理他们,他们怎么知道没有其他人参考他们并且可能在某些时候后来订阅他们?
我要求允许用户在单个设备上使用4+数字引脚式密码.显然,这是一个不好的密码,可以直接用于保护他们的服务器端帐户,因此我想将此PIN"锁定"到特定设备,以便某人必须同时拥有PIN和设备才能登录,以及获取访问权限的位置.设备无法访问PIN.此外,他们已经拥有更常规的用户名/密码登录,并且通过在设备上注册,他们正在为此现有帐户添加一组新的登录凭据.所以这是我目前的计划:
所以我相信这实现了强大的服务器端密码要求.但是,我还需要在注册过程之后尽可能地保护自己能够抵御受到破坏的客户端设备(在注册过程之前/期间受损的设备是丢失的原因).显然,使用4位加密密钥,只有10,000种可能的组合,因此攻击者可以很容易地快速尝试本地加密的强密码的每种组合.我想知道的是,我是否必须选择特定的对称加密方案和/或生成的密码格式,以便攻击者无法单独从本地数据中分辨出哪些10k解密尝试是正确的?即他仍然必须在服务器端登录时尝试每个10k密码.
此外,这种方法或实现这些要求的更标准方法是否存在明显错误?如果有标准方法,是否有针对此方法的标准.NET库?
我在类中有一个属性:
public int ProductID {get;set;}
Run Code Online (Sandbox Code Playgroud)
是否有可能在.NET中为此属性创建一些"别名",比如给它另一个名称,如' Product_Id
'?
所以稍后我可以使用以下方法设置此属性:
obj.ProductID = 555;
Run Code Online (Sandbox Code Playgroud)
和
obj.Product_Id = 666;
Run Code Online (Sandbox Code Playgroud) 我要求让一个服务处理请求,将其转换为其他请求,将该请求传递给内部服务,获取响应,然后将其转换回外部服务响应.有些代码可能会更好地解释它.这就是我所做的:
public class InviteUserService : Service, IPost<Invitee>
{
public RegistrationService RegistrationService { get; set; }
public object Post(Invitee invitee)
{
// Do other invitation related work that is part of my domain.
var registration = invitee.TranslateTo<Registration>();
registration.UserName = invitee.EmailAddress;
registration.Email = invitee.EmailAddress;
// It previously threw a null ref exception until I added this.
RegistrationService.RequestContext = RequestContext;
var response = RegistrationService.Post(registration);
if (response is RegistrationResponse)
{
var inviteeResponse = response.TranslateTo<InviteeResponse>();
return inviteeResponse;
}
// Else it is probably an error …
Run Code Online (Sandbox Code Playgroud) 这是我的git repo的当前状态(在GitX中可视化).
'34e ...'和'c3d ...'提交('实施全球......'评论的)是IDENTICAL.我用git diff证实了这一点,他们甚至有相同的提交时间!唯一的区别是他们的SHA.
我不知道我是如何让我的回购进入这种状态的.虽然我不是git pro,但我已经使用了一段时间了,并且对所有基础知识都非常熟悉.这是突然发生的,我没有试验过我以前没用过的任何git功能或工作流程,所以我很困惑.
没有其他人向遥控器提交过任何东西,所以我可以在那里改变历史,但不涉及这个问题的解决方案会更好.
我可以只对master和origin/master进行正常的合并或重组,但我对此感到不舒服,因为历史将显示2个相同的提交.
是否可以签出origin/master,然后将从'a4a ...'开始的所有提交重新命名为origin/master,然后将master切换到这个新的HEAD?(基本上是将'c3d ......'单独挂起,这与它的欺骗无关)
1)那么解决这个问题的首选方法是什么?
2)有任何想法如何发生?以前有人见过吗?
编辑:
git diff c3db784817 34e1ab666a:什么都没输出.
git reflog master:
德尔:MT-d-样式泰森$ GIT中引用日志主
9579294主@ {0}:提交:增加调试只有控制台打印测试图像视图
1155228主@ {1}:提交:添加了新标记接口,定制单元可以imp的
a4ab788主@ {2}:提交:增加了一个新StyledRootElement自动应用
c3db784主@ {3}:承诺:实施的全球技术用于造型所有存在
34e1ab6主@ {4}:承诺:实施的全球技术用于造型所有存在
8519fb1主@ {5}:commit:扩展remove方法,让调用者可以访问
30aeee6 master @ {6}:commit:添加了一个新的工厂方法Side Swipe View con
git reflog origin/master:
德尔:MT-d-样式泰森$ GIT中引用日志原点/主
34e1ab6参/遥控器/来源/主@ {0}:更新通过推
8519fb1参/遥控器/来源/主@ {1}:更新通过推
495e0ef参/遥控器/原点/主@ {2}:更新通过推
c5fec81参/遥控器/来源/主@ {3}:通过推更新
cba1e0f参/遥控器/来源/主@ {4}:通过推更新
9ee1ffb参/遥控器/原点/主@ {5}:更新通过推
68ee429参/遥控器/来源/主@ {6}:通过推更新
更新通过推:0e2d199参/遥控器/来源/主@ {7}
8a4de84参/遥控器/来源/主@ {8}:按推送更新
编辑2:
git log --format = raw --decorate --graph --all: …
我刚才已经组织了我的文档结构有一个更面向对象的设计(如移动顶级性能如venueId
和venueName
成venue
与对象id
和name
领域).
但是我现在无法为子venue
内部对象上的字段使用简单的术语过滤器.
这是我的映射:
{
"deal": {
"properties": {
"textId": {"type":"string","name":"textId","index":"no"},
"displayId": {"type":"string","name":"displayId","index":"no"},
"active": {"name":"active","type":"boolean","index":"not_analyzed"},
"venue": {
"type":"object",
"path":"full",
"properties": {
"textId": {"type":"string","name":"textId","index":"not_analyzed"},
"regionId": {"type":"string","name":"regionId","index":"not_analyzed"},
"displayId": {"type":"string","name":"displayId","index":"not_analyzed"},
"name": {"type":"string","name":"name"},
"address": {"type":"string","name":"address"},
"area": {
"type":"multi_field",
"fields": {
"area": {"type":"string","index":"not_analyzed"},
"area_search": {"type":"string","index":"analyzed"}}},
"location": {"type":"geo_point","lat_lon":true}}},
"tags": {
"type":"multi_field",
"fields": {
"tags":{"type":"string","index":"not_analyzed"},
"tags_search":{"type":"string","index":"analyzed"}}},
"days": {
"type":"multi_field",
"fields": {
"days":{"type":"string","index":"not_analyzed"},
"days_search":{"type":"string","index":"analyzed"}}},
"value": {"type":"string","name":"value"},
"title": {"type":"string","name":"title"},
"subtitle": {"type":"string","name":"subtitle"},
"description": {"type":"string","name":"description"},
"time": {"type":"string","name":"time"},
"link": {"type":"string","name":"link","index":"no"},
"previewImage": …
Run Code Online (Sandbox Code Playgroud) MonoTouch公开了RespondsToSelector方法,用于检查iOS版本中方法的可用性.
但是我似乎无法找到如何对类可用性执行类似的检查.
Apple在此处记录,在iOS 4.2+中,您应该尝试访问class
所需类的静态选择器.例如:
if ([EKReminder class])
{
....
}
Run Code Online (Sandbox Code Playgroud)
然而,这似乎没有暴露.我认为它类似于我之前的问题,因为要在MT中实现它,需要Class
在每个MT类型上显式映射静态属性.
所以我想我的问题是,我应该使用旧的iOS 4.2前技术吗?即:
Class cls = NSClassFromString (@"EKReminder");
if (cls)
{
...
}
Run Code Online (Sandbox Code Playgroud)
我认为映射到:
var iosClass = Class.GetHandle("EKReminder");
if ( iosClass != null )
...
Run Code Online (Sandbox Code Playgroud)
或者使用Messaging中提供的互操作方法手动调用选择器?
还是我找不到的其他方法?
我有以下对象,并希望创建一个按ParentCategoryID分组的过滤器.
[
{id : 116, Desciption : 'Item1', ParentID : 1, parent : 'Parent1'},
{id : 117, Desciption : 'Item2', ParentID : 2, parent : 'Parent2'},
{id : 118, Desciption : 'Item3', ParentID : 2, parent : 'Parent2'},
{id : 119, Desciption : 'Item4', ParentID : 1, parent : 'Parent1'}
]
Run Code Online (Sandbox Code Playgroud)
所以结果会是
Parent1
Item1
Item4
Parent2
Item2
Item3
Run Code Online (Sandbox Code Playgroud)
我的过滤器目前看起来像这样:
productDetailsApp.filter('groupBy', function() {
return function(list, group_by) {
var filtered = [];
var prev_item = null;
angular.forEach(list, function(item) {
if (prev_item !== …
Run Code Online (Sandbox Code Playgroud) 我试图使用UINavigationController(Type navigationBarType, Type toolbarType)
构造函数来指定UINavigationBar
在C#中定义的自定义派生类.
但是,我的所有尝试都会导致null ref异常.我认为这与我的托管类没有找到本地类有关吗?
if (UIDevice.CurrentDevice.CheckSystemVersion(7, 0))
rootNavController = new UINavigationController(typeof(UnderlayNavigationBar), null);
else
rootNavController = new UINavigationController();
Run Code Online (Sandbox Code Playgroud)
传递默认值typeof(UIToolbar)
并没有帮助,而不是第二个空参数.
System.NullReferenceException: Object reference not set to an instance of an object
at MonoTouch.ObjCRuntime.Runtime.ConstructNSObject[NSObject] (IntPtr ptr, System.Type type, MissingCtorResolution missingCtorResolution) [0x00037] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/Runtime.cs:365
at MonoTouch.ObjCRuntime.Runtime.ConstructNSObject (IntPtr ptr, IntPtr klass, MissingCtorResolution missingCtorResolution) [0x00013] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/Runtime.cs:348
at MonoTouch.ObjCRuntime.Runtime.GetNSObject (IntPtr ptr, MissingCtorResolution missingCtorResolution) [0x00021] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/Runtime.cs:430
at MonoTouch.ObjCRuntime.Runtime.TryGetOrConstructNSObjectWrapped (IntPtr ptr) [0x00000] in /Developer/MonoTouch/Source/monotouch/src/ObjCRuntime/Runtime.cs:658
at at (wrapper native-to-managed) MonoTouch.ObjCRuntime.Runtime:TryGetOrConstructNSObjectWrapped …
Run Code Online (Sandbox Code Playgroud) .net ×5
c# ×3
ios ×3
xamarin.ios ×2
angularjs ×1
asynchronous ×1
c#-4.0 ×1
encryption ×1
git ×1
idisposable ×1
ios7 ×1
javascript ×1
lucene ×1
objective-c ×1
search ×1
security ×1
servicestack ×1
uikeyboard ×1
weak-linking ×1