Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 表格单元格视图未右对齐_Ios_Uitableview_Right To Left - Fatal编程技术网

Ios 表格单元格视图未右对齐

Ios 表格单元格视图未右对齐,ios,uitableview,right-to-left,Ios,Uitableview,Right To Left,我正在尝试右对齐表格单元格 我在整个视觉树中将“语义”属性设置为“从右向左强制”值 所需布局: 可视树: 代码中没有任何可视定义 编辑: 在@dirtydanee建议之后: 对于堆栈视图,您应该将对齐设置为前导,使其从您的语言的前导位置开始,这是您的最右侧。然后将Semantic设置为Force Right to Left 必须将堆栈视图的边绑定到其容器的边,以便堆栈视图的大小与其容器的大小相匹配。让标签具有动态大小也很重要。代码中似乎满足了这两个条件,但并不完全清楚。只需执行以下操作,

我正在尝试右对齐表格单元格

我在整个视觉树中将“语义”属性设置为“从右向左强制”值

所需布局:

可视树:

代码中没有任何可视定义

编辑:

在@dirtydanee建议之后:

对于堆栈视图,您应该将
对齐
设置为
前导
,使其从您的语言的前导位置开始,这是您的最右侧。然后将
Semantic
设置为
Force Right to Left


必须将堆栈视图的边绑定到其容器的边,以便堆栈视图的大小与其容器的大小相匹配。让标签具有动态大小也很重要。代码中似乎满足了这两个条件,但并不完全清楚。

只需执行以下操作,即可在tableviewCell中将文本分配到右侧

  • 步骤1:在情节提要的contect view单元格中选择view

  • 步骤2:将文本对齐到右侧


看来您的约束是错误的

将标签向右约束,并将其文本向右对齐

以下是一个例子:

并在模拟器上运行:


如果使用
前导
尾随
约束来布局
UILabel
元素,如果使用从右到左的语言,所有内容都会自动切换到正确的站点。需要更改
NSTextAlignment
.natural
是默认值,也是您需要的)或
UILabel
UISemanticContentAttribute


请注意,您需要在项目本地化中至少添加一种RTL语言:


当您的iPhone/iPad语言设置为希伯来语时,一切都应按预期工作:


这也取决于您选择的设备


您可以尝试使用
而不是
前导
,使用
而不是
尾随
我尝试了一个演示,我想您需要做的是分别为每个标签设置语义

转到perekSourcelabel将语义从右向左设置 然后对标题标签执行相同的操作


不要为堆栈视图或整个perekTableViewcell设置语义。复制另一个对齐良好的场景(视图控制器)并删除损坏的场景可以解决此问题


不确定问题出在哪里。

您的单元格是右对齐的,正如您指定的那样。是否要将文本向右对齐并从最长的文本开始?忘记在屏幕截图中展开约束。我想把文字钉在右角。希伯来语是从右向左读的。我将很快尝试绘制所需的布局。尝试此教程将解决您的问题:我的应用程序的阿拉伯语版本也使用它。感谢不起作用的:-([关于另一个问题-它不起作用。如果我接受你的回答,这将减少我从其他用户那里得到替代答案的机会。尽管如此,我还是给了你全部的赏金。]谢谢,我真的很想帮助你,你使用的是哪个版本的Xcode?哪种语言Swift/obj-c?还有,你复制了我的限制吗?顺便说一句,我没有编辑任何本地化设置,我已经在英语设置为languageXcode 8.3.2.Swift 3的设备上测试了这个示例。我复制了它们。我还认为这与本地化无关。你能吗请添加属性检查器的照片?这是一张带有小屏蔽符号的照片我没有编辑任何本地化设置,我已经在设置为英语的设备上测试了这个示例language@inspector_60我不明白你的意思。你想告诉我们什么?解决办法不应该局限于“希伯来语”只有设备。它不适用于@Dorad的原因必须是other@inspector_60这是您为ltr和rtl语言构建界面的方式。如果此解决方案有用与否取决于Dorad。它是否适用于您?或者不适用?此外,您还可以设置文本对齐自然设置不起作用。设置文本对齐自然设置也不起作用分配文本?您的约束也应该是这样的,右:(您的常量=),上:(您的常量=),下:(您的Cons=)和左:(大于(您的常量))没有属性文本。稍后将尝试建议的约束并通知您。好的,祝您好运,通过查看您的输出,您已正确完成除约束以外的所有操作,