问题标签 [uiview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
107129 浏览

uiview - UIView的frame,bounds,center,origin,什么时候用什么?

UIView具有属性frame, bounds,centerorigin, 并且它们似乎都是相互关联的。大多数时候,我frame会在设置 a 的位置和大小时进行处理UIView。我知道这frame是使用全局坐标系并bounds使用本地视图的坐标(因此它的 x 和 y 为 0,但并非总是如此),但我仍然对何时使用什么感到困惑。

在什么情况下(以及什么是正确的时间)应该使用其他属性( bounds, center, )?origin

0 投票
3 回答
1745 浏览

iphone - 我的 UIViewController 对其中心属性“撒谎”

我正在向我的 ViewController 询问它的 view.center 属性并绘制一个新的 UIView 以这个“中心”为中心......我得到 (160, 250) 作为响应。但是当新的 UIView 绘制它时,它位于中心下方......所以我想知道是谁给了我这个信息以及它与什么有关?如果考虑到状态栏的 20px 高度,这显然是视图中心相对于 WINDOW 的位置。这会将视图的中心向下推 10 像素。但是在绘制 myView 时,它似乎是相对于 ViewController.view 而不是 Window 绘制的,因此它出现在中心下方 20px 处...

我希望 ViewController 给我它的中心 (160, 230),这样我就可以在它的中心绘制......我是否需要手动考虑状态栏并每次从高度中减去 20?还是我忽略了一些视图空间翻译?从 ViewController.m:

}

控制台:CenterX:160.000000,Y:250.000000

0 投票
1 回答
1370 浏览

iphone - 如何使用 Interface Builder 正确控制 UINavigationControllers?

在过去的两周里,我一直在学习构建 iPhone 应用程序。我已经了解了相当多的内容,现在我正在尝试使用 presentModalView 创建一个模态弹出窗口。

我可以成功创建并向上滑动视图,但我注意到模态视图不会在窗口顶部为您提供默认导航栏,我猜这对灵活性是有意义的。我见过的大多数模态视图都有一个“取消”和一个“完成”或“保存”按钮作为导航项,看起来像是 UINavigationController。我当时的想法只是实例化一个导航控制器并将单个视图推送到视图控制器堆栈上,然后 presentModalView:navController.view ...

因为视图相对复杂,我试图用条形按钮布置 UINavigationController 和我希望在单个 xib 中推入堆栈的视图——无论我尝试什么,我似乎都做不到使链接正确。你能做到吗?或者我应该为要推送到导航控制器的视图创建一个单独的类/xib?似乎一个屏幕上有很多类和文件,所以我的感觉是我一定遗漏了一些东西。

在这一点上,我本可以在大约一个半小时前以编程方式完成它......然而,这是一个真正的唠叨,因为 IB 在某些事情上似乎很棒。有没有人遇到过这样的情况?

谢谢,乔什

0 投票
3 回答
249 浏览

iphone - 从笔尖重组物体 - 只需加水?也许不吧

我读过很多关于在 IB 中设置 UI 的优点。以及当笔尖被“唤醒”时,其中的所有物体如何“复活”。

我正在尝试将大约 10 个 UIView 对象放入 ViewController 拥有的 nib 中。UIView 对象属于 MyView 类型,并被连接回 ViewController 中它们各自的属性。MyView 是 UIView 的子类,具有一些附加属性,例如 UIImage *image 和 NSNumber *value。

笔尖清楚地加载,因为我可以看到一些其他 UIImageView 元素也在笔尖中。但是,当我尝试在 10 个 MyView 对象之一中设置属性时,我无法做到。在调试器中,这些对象的属性仍然是 0x0。

我还觉得 MyView 类中的 initWithCoder 方法会在这 10 个对象中的每一个从睡眠中唤醒时触发,所以我可以在运行时设置一些属性?!?

任何人都知道发生了什么……我很高兴为此放弃 IB,但我想我会试一试……

0 投票
1 回答
1369 浏览

iphone - 推送和弹出视图控制器 - 动画

我正在为我的应用程序使用导航控制器,因为我的很多视图都是分层的。但是,我想在有人按下按钮时推送设置视图。但是,我不想从右到左制作动画,因为我不想给用户留下设置是堆栈中它下方视图的子视图的印象。

有什么方法可以让视图从下到上变化?

或者另一种轻松切换视图的方法。推送和弹出视图非常简单!

谢谢!

0 投票
19 回答
46932 浏览

iphone - 如何禁用多点触控?

我的应用程序有几个触发不同事件的按钮。用户不应该能够按住几个按钮。无论如何,按住几个按钮会使应用程序崩溃。

所以,我试图在我的应用程序中禁用多点触控。

我已经在所有 xib 文件中取消选中“多点触控”,据我所知,“multipleTouchEnabled”和“exclusiveTouch”属性控制视图是否使用多点触控。所以在我的 applicationDidFinishLaunching 我放了这个:

在我的每个视图控制器中,我都把它放在了 viewDidLoad

但是,它仍然接受多次触摸。在发生触地事件后,我可以执行诸如禁用其他按钮之类的操作,但这将是一个丑陋的黑客行为。当然有一种方法可以正确禁用多点触控?

0 投票
1 回答
14609 浏览

iphone - 一个 Nib 中的多个视图 (addSubview)

我试图保持我的代码干净并减少文件数量。我正在使用 UITableViewController,我想在它上面加载另一个视图。我认为这很简单:

(1) 在我的 .h 文件中创建一个 IBOutlet

(2) 将其链接到我在 IB 中的视图

(3)做类似的事情:

或者

但这对我不起作用。如果我做

然后表格视图消失了,但我不知道如何从我的笔尖添加我的视图。我正在以编程方式为 tableView 做所有事情,但我认为这并不重要。并且使用 UITableViewController 子类化 UIViewController 我认为使用 addSubview 或类似的东西不会有问题。我错过了什么?这应该没那么难吧?

更新:所以,如果我执行以下操作:

它(主要)做了我想要的。那么这是否意味着我在连接 IB 视图的方式上搞砸了?在 IB 中,我将 fileOwner 的类设置为 MyViewController,并在 downloadView 和我创建的视图(在 IB 中)之间建立了连接。这就是我应该做的对吗?

0 投票
1 回答
2563 浏览

iphone - 如何在 IB for iPhone 3.0 中更改视图大小

我想更改 iPhone 3.0 的视图大小,但我发现在 IB,size&Position 部分,视图的宽度和高度设置为固定值。苹果是否禁止我们在这里更改其值。那我怎样才能改变它的高度呢?

PS:我使用导航栏作为标题栏,所以我需要将视图的高度更改为416,以便知道我可以使用多少空间来组织我的控件。

0 投票
2 回答
1728 浏览

iphone - 忽略对背景(超级)视图的触摸

我应该如何处理,或者更确切地说不处理(忽略)对我的背景视图的触摸?它恰好是我的视图控制器的视图,它具有我想要响应触摸事件的子视图(对象)。为视图设置 userInteractionEnabled = NO 似乎也关闭了子视图的所有交互。

我目前正在测试

在 touchesBegan/Moved/Ended 中。但我正在尝试消除一些条件测试,以便寻找更好的方法......

0 投票
2 回答
1181 浏览

iphone - 修复了 UIView 内的键盘

有没有办法在视图中包含键盘?我希望它成为观点的一部分,而不是被驳回。

Birdfeedapp 在它的“添加帐户”模式视图中执行此操作。