想要移除svn時控管時,
必須要刪除所有資料夾下的.svn,
但是資料夾多的時候真的會刪到手軟。
在Mac 終端機中,先切換到專案資料夾,
然後輸入:
find . -name ".svn" -exec rm -rf {} \;
這樣就能刪光光啦!
find . -name ".svn" -exec rm -rf {} \;
這樣就能刪光光啦!
// 在原先要push的地方加上,取代原先的push
[self performSelector:@selector(showView) withObject:nil afterDelay:0.7];
// Push View
- (void)showView{
UIViewController *viewController = [[UIViewController alloc] initWithNibName:@"UIViewController" bundle:nil];
[self.navigationController pushViewController:viewController animated:YES];
}
參考文件: The following is a list of built-in, permanent debugger commands:
_regexp-attach -- Attach to a process id if in decimal, otherwise treat the
argument as a process name to attach to.
_regexp-break -- Set a breakpoint using a regular expression to specify the
location, where is in decimal and
is
in hex.
_regexp-bt -- Show a backtrace. An optional argument is accepted; if
that argument is a number, it specifies the number of
frames to display. If that argument is 'all', full
backtraces of all threads are displayed.
_regexp-display -- Add an expression evaluation stop-hook.
_regexp-down -- Go down "n" frames in the stack (1 frame by default).
_regexp-tbreak -- Set a one shot breakpoint using a regular expression to
specify the location, where is in decimal and
is in hex.
_regexp-undisplay -- Remove an expression evaluation stop-hook.
_regexp-up -- Go up "n" frames in the stack (1 frame by default).
apropos -- Find a list of debugger commands related to a particular
word/subject.
breakpoint -- A set of commands for operating on breakpoints. Also see
_regexp-break.
command -- A set of commands for managing or customizing the debugger
commands.
disassemble -- Disassemble bytes in the current function, or elsewhere in
the executable program as specified by the user.
expression -- Evaluate a C/ObjC/C++ expression in the current program
context, using user defined variables and variables
currently in scope.
frame -- A set of commands for operating on the current thread's
frames.
gdb-remote -- Connect to a remote GDB server. If no hostname is
provided, localhost is assumed.
help -- Show a list of all debugger commands, or give details
about specific commands.
kdp-remote -- Connect to a remote KDP server. udp port 41139 is the
default port number.
log -- A set of commands for operating on logs.
memory -- A set of commands for operating on memory.
platform -- A set of commands to manage and create platforms.
plugin -- A set of commands for managing or customizing plugin
commands.
process -- A set of commands for operating on a process.
quit -- Quit out of the LLDB debugger.
register -- A set of commands to access thread registers.
script -- Pass an expression to the script interpreter for
evaluation and return the results. Drop into the
interactive interpreter if no expression is given.
settings -- A set of commands for manipulating internal settable
debugger variables.
source -- A set of commands for accessing source file information
target -- A set of commands for operating on debugger targets.
thread -- A set of commands for operating on one or more threads
within a running process.
type -- A set of commands for operating on the type system
version -- Show version of LLDB debugger.
watchpoint -- A set of commands for operating on watchpoints.
For more information on any particular command, try 'help '.
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault]; [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent]; [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque];
// 主線程呼叫 [self performSelectorInBackground:<#(SEL)#> withObject:<#(id)#>]; [NSThread detachNewThreadSelector:<#(SEL)#> toTarget:<#(id)#> withObject:<#(id)#>]; // 更新UI [self performSelectorOnMainThread:<#(SEL)#> withObject:<#(id)#> waitUntilDone:<#(BOOL)#>];
- (UIImage *)cellBackgroundForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSInteger rowCount = [self tableView:[self tableView] numberOfRowsInSection:0];
NSInteger rowIndex = indexPath.row;
UIImage *background = nil;
if (rowIndex == 0) {
background = [UIImage imageNamed:@"cell_top.png"];
} else if (rowIndex == rowCount - 1) {
background = [UIImage imageNamed:@"cell_bottom.png"];
} else {
background = [UIImage imageNamed:@"cell_middle.png"];
}
return background;
}
CGRectInset(CGRect rect, CGFloat dx, CGFloat dy)老是搞不清楚運作的方式
rect = (0, 0 ,320, 480)
CGRectInset(rect, 0, 0) => x = 0.000000, y = 0.000000, width = 320.000000, height = 480.000000
CGRectInset(rect, 10, 0) => x = 10.000000, y = 10.000000, width = 300.000000, height = 480.000000
CGRectInset(rect, 20, 0) => x = 20.000000, y = 20.000000, width = 280.000000, height = 480.000000
CGRectInset(rect, 0, 10) => x = 0.000000, y = 0.000000, width = 320.000000, height = 460.000000
CGRectInset(rect, 0, 20) => x = 0.000000, y = 0.000000, width = 320.000000, height = 440.000000
CGRectInset(rect, 10, 20) => x = 10.000000, y = 10.000000, width = 300.000000, height = 440.000000
CGRect newRect = CGRectInset(CGRect rect, CGFloat dx, CGFloat dy)
newRect.origin.x = dx;
newRect.origin.y = dx;
newRect.size.width = rect.size.wide - dy * 2
newRect.size.height = rect.size.height - dy * 2
*** Terminating app due to uncaught exception 'NSGenericException', reason: '*** Collection <__nsarraym: data-blogger-escaped-0x75828d0=""> was mutated while being enumerated.' *** First throw call stack: (0x15a1012 0x12aee7e 0x1629cc5 0x3ec3 0x12c2705 0x1f62c0 0x1f6258 0x2b7021 0x2b757f 0x2b66e8 0x225cef 0x225f02 0x203d4a 0x1f5698 0x2603df9 0x2603ad0 0x1516bf5 0x1516962 0x1547bb6 0x1546f44 0x1546e1b 0x26027e3 0x2602668 0x1f2ffc 0x2bdd 0x2b05) libc++abi.dylib: terminate called throwing an exception
今天遇到了一個問題
Google "NSGenericException"之後找到了問題
起因是因為我要刪除Array中某元素所造成
這問題主因簡單來說就是太多層了
系統來不及反映所導致
比如說:我要刪除 a.array[0].array[1]
這樣就有可能會發生問題
//Deprecated self presentModalViewController:(UIViewController *) animated:(BOOL) //改用 self presentViewController:(UIViewController *) animated:(BOOL) completion:^(void)completion