默认情况下iOS不支持我的语言,所以unicode不是一个选项所以我在UITextView上使用嵌入式真实字体
它在很大程度上起作用,但我的问题就像阿拉伯语,希伯来语我的语言是从右到左书写的.所以我需要改变文本的方向(Not Text Alignment).
我做了一些搜索,他们都谈论NSLocale和东西,但它可以在代码中改变吗?如果我可以把它改成像阿拉伯语/希伯来语那样它我会猜测,但它应该在代码中完成,因为我不想改变手机的语言.
那么我的文本输入选择到底是什么?任何帮助,将不胜感激.
谢谢.
我的.h文件中有以下代码:
@interface Utils : NSObject {
NSString *dPath;
}
@property(nonatomic, retain) NSString *dPath;
Run Code Online (Sandbox Code Playgroud)
在我的.m文件中:
NSArray *documentPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
dPath = [[documentPaths objectAtIndex:0] stringByAppendingPathComponent:kDatabaseName];
[dPath retain];
Run Code Online (Sandbox Code Playgroud)
如果dPath已经定义为(非原子,保留),为什么还要保留 dPath?如果我不添加[dPath retain]; 我得到一些奇怪的,随机的错误,并且在其他函数中使用此变量时应用程序崩溃.我想这是因为某些自动释放,但我没有.
那么,什么是(非原子的,保留)做什么呢?是否真的有必要[dPath保留]; 或者我只是隐藏其他东西?
第§6.5.3.2节"地址和间接操作符"3表示(仅限相关部分):
一元&运算符返回其操作数的地址....如果操作数是一元运算
*符的结果,则不会对该运算符和&运算符进行求值,结果就好像两者都被省略,除了对运算符的约束仍然适用且结果不是左值.类似地,如果操作数是[]运算符的结果,&则不会对运算符或*由其暗示的一元[]进行求值,结果就像&删除了[]运算符并将运算符更改为+运算符一样....
这意味着:
#define NUM 10
int tmp[NUM];
int *i = tmp;
printf("%ti\n", (ptrdiff_t) (&*i - i) );
printf("%ti\n", (ptrdiff_t) (&i[NUM] - i) );
Run Code Online (Sandbox Code Playgroud)
应该完全合法,打印0和NUM(10).标准似乎非常清楚,这两种情况都需要进行优化.
但是,它似乎不需要优化以下内容:
struct { int a; short b; } tmp, *s = tmp;
printf("%ti\n", (ptrdiff_t) (&s->b - s) );
Run Code Online (Sandbox Code Playgroud)
这似乎非常不一致.我没有理由认为上面的代码不应该打印sizeof(int)加号(不太可能)填充(可能是4).
简化&->表达式在概念上(IMHO)将是&[]一个简单的地址加偏移量.它甚至是一个在编译时可以确定的偏移量,而不是[]运算符可能的运行时间.
关于为什么这么看似不一致的理由是否存在?
假设你有一个带骑士,公主和出口的NxN迷宫.

还有一个邪恶的巫婆正计划阻挡M方块(将它们置于火上).在骑士第一次移动之前,她将把所有这些块都置于火上(他们不会交替转弯).
给定迷宫的地图和M,你能否在O(N ^ 2)中决定骑士是否能够到达公主,然后是出口,因为巫婆可以选择任何一个块(意思是 - 可以巫婆做出可以阻止骑士和公主逃跑的选择)?
有人可以解释一下,当在值类型中定义引用类型时会发生什么.我写下面的代码:
namespace ClassInsideStruct
{
class ClassInsideStruct
{
static void Main(string[] args)
{
ValueType ObjVal = new ValueType(10);
ObjVal.Display();
ValueType.ReferenceType ObjValRef = new ValueType.ReferenceType(10);
ObjValRef.Display();
Test(ObjVal, ObjValRef);
ObjVal.Display();
ObjValRef.Display();
Console.ReadKey();
}
private static void Test(ValueType v, ValueType.ReferenceType r)
{
v.SValue = 50;
r.RValue = 50;
}
}
struct ValueType
{
int StructNum;
ReferenceType ObjRef;
public ValueType(int i)
{
StructNum = i;
ObjRef = new ReferenceType(i);
}
public int SValue
{
get { return StructNum; }
set
{
StructNum = value;
ObjRef.RValue …Run Code Online (Sandbox Code Playgroud) 管理Vim插件的最佳方法是什么?有些插件使用的是Vimball,但是我在某个地方看到它被严重破坏了,并且手动将每个插件放入〜/ .vim /会导致一堆几乎无法更新或组织的文件.是否有一个Vim的插件管理器,其功能与Linux包管理器类似?或者可以将插件重新组织到自己的目录中,以便更轻松地管理它们吗?
我想通过4个不同的链接下载4个不同的文件.我正在使用Media视图下载文件,但我必须在控制器的下载功能中对文件名进行硬编码:
function download () {
$this->view = 'Media';
$params = array(
'id' => 'example.zip',
'name' => 'example',
'download' => true,
'extension' => 'zip',
'path' => APP . 'files' . DS
);
$this->set($params);
}
Run Code Online (Sandbox Code Playgroud)
这适用于一个文件.现在,对于2,3,4号链接,我是否需要创建3个不同的操作并在其中提供不同的文件名,或者是否有一种方法可以使用download()仅根据链接下载相应的文件已被点击?
作为一个新手,我可能错过了一些关于Ruby的东西,但对于我的生活,我不明白这个结果.所以我有这个简单的功能:
def crazyfunc(s)
s.gsub!('a', 'b')
#return has not purpose here
end
Run Code Online (Sandbox Code Playgroud)
现在我有这么简单的几套.
s1 = 'abc'
s2 = s1
s2 = crazyfunc(str2)
puts s1
=> bbc
Run Code Online (Sandbox Code Playgroud)
为什么世界上的s1受到crazyfunc的影响?所以这样做:
def crazyfunc(s)
return s.gsub('a', 'b')
end
Run Code Online (Sandbox Code Playgroud)
不会改变str1,所以我认为它与inplace gsub正在做的事情有关.但我仍然没有得到为什么str1会被改变的逻辑.
我有一个像这个$ ids = array(3,7,6,5,1,8,11)这样的数组.我们怎么知道缺失值是2,4,9,10?
我预计$ ids值1,2,3,4,5,6,7,8,9,10,11和订单无关紧要,可能是3,5,6,1,2,4,8, 9,10,11.
我不需要用缺少的值填充我的数组,我只想知道谁缺少了