问题标签 [uitoolbar]
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.
iphone - 将 UIToolbar 添加到窗口
我有一个基于导航的应用程序,我正在尝试添加一个独特的 UIToolbar,无论哪个是当前视图,它都将是持久的,使用这个:
问题是当我为 navigationController 设置框架时,navigationController 内的 UITableView 在导航栏下方移动了 20px,就好像它开始在状态栏后面绘制一样。
关于如何解决这个问题的任何想法?我被困住了!
iphone - 带有图像和标题的 UIToolbar UIBarButtonItem 文本非常暗
我的 iPhone 视图在其工具栏中添加了一些自定义按钮。每个按钮都有一个图像和文本标题,并且是这样创建的:
标题的文字显示非常暗淡;看起来它的 alpha 约为 0.5。如果我使用默认的 UIToolBar barStyle,我根本无法阅读文本。使用 UIBarStyleBlack 时,我可以阅读文本,但看起来仍然很暗淡。
我也试过initWithTitle,然后设置image属性;结果是相同的。
有没有办法让文字变亮?我希望外观类似于 UITabBar,其项目既有图像又有标题。
谢谢您的帮助!
iphone - 如何在 iPhone 开发中构建“面板”(带图片)?
我需要一个像“面板”这样的工具栏,它可以包含文本字段和按钮,就像你可以定义它的宽度和高度以及它的位置的工具栏一样。您可以将您想要的元素放入“工具栏”。
如下所示:
有什么线索吗?
ios - 如何在 iOS 的“面板”中构建两个文本字段的 UI?
我想构建一个带有文本字段的 UI。
我需要两个文本字段出现在“面板”中,并且我可以控制该“面板”以使其显示或不显示。我怎样才能做到这一点?
iphone - iPhone 基于导航的应用程序 - 一些全局工具栏问题
我两个月前开始 iPhone 开发,所以我不能称自己为“专家”;-) 但在这两个月里我学到了很多东西,从 stackoverflow 学到了很多 :)
我正在开发一个基于“基于导航的应用程序”应用程序模板。当然,我的 RootViewController 是一个 UITableView。从那个 TableView,我可以导航到一些视图和一个 TableView。
我正在使用全局工具栏,它在 RootViewController 中调用。在需要按钮的视图中添加按钮。
现在,我对工具栏的使用有一些疑问
我用该代码插入一个灵活的空间:
UIBarButtonItem *flexibleSpace = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:self action:nil];
和这样的固定空间:
我的问题:灵活空间正在工作,但我如何告诉固定空间它应该具有哪个宽度?
2. 我注意到我的 Todo 应用程序“事物”使用带有切换按钮集的全局工具栏。但在 Things 中,当按钮集发生变化时,会出现某种淡入淡出的效果。我怎样才能在我的应用程序中做到这一点?
iphone - iPhone上的自定义相机工具栏
我已经为 iPhone 创建了一个相机应用程序,现在我坐下来完善它的最后一个。我的应用程序是一个拼贴应用程序,用户可以在其中连续拍摄多张照片。
就像今天一样,我有一个自定义的相机视图,其中包含一个用于拍照的 UIButton 和一个用于返回主视图的 UIButton。
问题是我的应用程序是为横向模式设计的,而相机控件只能以纵向模式显示。这使得 GUI 的设计有点棘手,我现在想从视图中的按钮转移到工具栏中的按钮。初始化相机时,您可以设置一堆不同的参数,其中一个是UIImagePickerController.toolbarHidden。如果我将值设置为NO,它将显示一个空的工具栏,我的问题是,如何将项目添加到此工具栏?
我尝试了不同的解决方案,但没有任何运气。
谢谢,德里斯
iphone - UIToolBar 和 iPhone 界面方向问题
我正在 iPhone 中开发一个应用程序。一种视图支持纵向和横向方向。对于两个方向,我都有两个单独的视图。此视图UIToolbar
顶部有一个。
问题是当我将视图从横向更改回纵向UIToolbar
时,顶部消失了。toolbar
当它旋转回纵向时,我希望它回到原来的位置。
这就是我在我的程序中所做的:
我不知道我在这里错过了什么?任何帮助将非常感激。
iphone - 表格视图存在时跨 UIToolbar 的白线
我在几个视图中有一个以编程方式创建的 UIToolbar。在我认为存在表格的情况下,工具栏中间有一条白线,这似乎是表格单元格的边框所在的位置。有没有办法摆脱这条线?
这是一个屏幕截图:
这是我用来创建所示工具栏的代码:
}
}
iphone-sdk-3.0 - 是否可以隐藏带有动画的 UIToolbar?
我知道此代码UINavigationController
仅供参考。
iphone - 什么可以将触摸传递到(并显示所有)子视图?
我有以下子视图链:
在子类中,我重写了它的-touchesEnded:forEvent:
方法,以便在UIToolbar
单击时隐藏和显示,通过 a CAAnimation
,以及发出一个NSNotification
导致视图控制器隐藏其导航栏的问题。
如果我不将UIWebView
作为子视图添加到视图控制器的视图中,那么它可以正常工作。
如果我然后添加UIWebView
作为视图控制器视图的子视图,则UIToolbar
不会出现,并且我没有获得动画效果。UIWebView
响应触摸,但子类不UIView
响应。但是,通知确实被触发了,并且导航栏确实被隐藏了。
安排这些子视图的最佳方法是什么,以便:
UIToolbar
可以在屏幕上滑动和滑出- 可见仍然可以接收其
UIWebView
典型的触摸事件:放大/缩小和双击以重置缩放级别
正确的答案将满足这两个标准。
编辑
我在这方面取得了一些进展,但我无法区分触摸事件,因此我在不应该触发工具栏隐藏/显示方法时触发它。
我将视图控制器的视图属性设置为UIView
子类,并-subviews
通过[self.view insertSubview:self.webView atIndex:0]
.
我在子类中添加了以下方法UIView
:
该方法-toggleToolbarView:
触发NSTimer
隐藏CAAnimation
/显示UIToolbar*
.
问题是触摸-拖动组合会导致-toggleToolbarView:
触发(以及放大或缩小 Web 视图)。我想做的是-toggleToolbarView:
仅在有仅触摸事件时才被触发。
当我调用上述方法-hitTest:withEvent:
时,它看起来像是在UIWebView
吸吮。这两个NSLog
语句表明UIView*
从 parent 返回的 theUIView*
是-hitTest:withEvent:
theUIWebView
或 the UIToolbar
(当它在屏幕上并被触摸时)。该touches
数组为空,因此无法区分触摸事件类型。
还有一件事我会尝试,但我想在这里记录一下这个尝试,以防其他人有快速的建议。感谢您的持续帮助。
编辑二
UIWebView
我在捏/缩放和双击响应方面取得了一些进展。我还可以通过单击隐藏/显示工具栏。
我没有弄乱UIWebView
实例的 private UIScroller
,而是访问它的内部 private UIWebDocumentView
。但是放大后,整个 Web 视图无法正确重绘。
这意味着:如果我的文档包含 PDF 或 SVG 矢量图,例如,放大会导致内容模糊,就好像构成渲染的 PDF 或矢量图内容的图像图块没有被重新渲染新的缩放系数。
为了记录这一点,我将:
UIView (subclass)
改为调用ViewerOverlayView
被
UIWebView
称为ViewerWebView
两者分别是UIView
和的子类UIWebView
。
MyViewerWebView
包含一个新的 ivar(带@property
+ @synthesized
):
(这UIView
实际上是一个指向UIWebDocumentView
实例的指针,但为了避免 Apple 将应用程序标记为拒绝,我将其转换为 a 只是UIView
为了传递触摸事件。)
ViewerWebView
覆盖的实现-hitTest:withEvent:
MyViewerOverlayView
包含新的 ivars(带@property
+ @synthesized
):
在覆盖视图的实现中,我覆盖了-touchesBegan:withEvent:
,-touchesMoved:withEvent:
和-touchesEnded:withEvent:
在视图控制器中,我执行以下操作:
实例化
ViewerOverlayView
并将其添加为视图控制器view
属性的子视图实例化视图控制器的
ViewerWebView
实例并将其插入到子视图数组的底部将
ViewerOverlayView
网络视图属性设置为视图控制器的网络视图
所以现在我的透明ViewerOverlayView
正确地将缩放/拉伸/双击触摸事件传递给ViewerWebView
实例的私有UIWebDocumentView
实例。然后UIWebDocumentView
调整大小。
但是,内容不会使用新比例重新绘制自身。因此,基于矢量的内容(例如 PDF、SVG)在放大时看起来很模糊。
这是没有缩放的视图,漂亮而清晰:
这是放大后的视图,它不像没有所有这些自定义事件的情况下那样清晰:
有趣的是,我只能在两个缩放级别之间重新缩放。一旦我停止双击拉伸以放大任何级别,它就会“弹回”到您在上图中看到的帧。
我尝试-setNeedsDisplay
了ViewerWebView
及其内部UIWebDocumentView
实例。两种方法调用都不起作用。
尽管想避免使用私有方法,但因为我希望最终获得该应用程序的批准,我也尝试了访问私有方法的建议:UIWebDocumentView
-_webCoreNeedsDisplay
此方法导致应用程序因unrecognized selector
异常而崩溃。或许 Apple 已将此方法的名称从 SDK 3.0 更改为 3.1.2。
除非有办法让 web 视图重绘其内容,否则我想我将不得不废弃透明覆盖视图并只绘制一个 web 视图,以使 web 视图正常工作。太糟糕了!
如果有人对缩放后重绘有想法,请随时添加答案。
再次感谢大家的意见。顺便说一句,我没有取消这个问题的赏金——我不知道为什么它没有自动授予这个线程的第一个答案,因为我原本期望从以前的经验中发生这种情况。
编辑三
我发现这个网页显示了如何对应用程序窗口进行子类化,以便观察点击并将这些点击转发到视图控制器。
没有必要在整个应用程序的任何地方都实现它的委托,只需要在我想观察点击的地方实现它UIWebView
,所以这对于文档查看器来说可能非常有效。
到目前为止,我可以观察点击、隐藏和显示工具栏,其UIWebView
行为类似于 web 视图。我可以放大和缩小 Web 视图,并且正确地重新呈现文档。
虽然学习如何以更通用的方式管理水龙头会很好,但这看起来是一个非常棒的解决方案。