标签: uipickerview

如何在UIPickerView中更改字体大小?

我有一个UIPickerView.这有近200个项目,每个项目都有长文本,因此,我想调整UIPickerView的字体大小.我怎么能改变它?有可能的?谁能帮我?谢谢 !

Yuva.M

iphone font-size uipickerview

53
推荐指数
7
解决办法
6万
查看次数

从IOS 8在UIActionSheet中添加UIPickerView无法正常工作

我正在补充UIPickerView,UIActionsheet但它的工作完美,ios 7但没有工作ios 8.请帮我解决这个问题.

在这里我附上了截图.在此输入图像描述

谢谢

我正在使用以下代码.

UIActionSheet *actionSheet;
NSString *pickerType;

- (void)createActionSheet {

    if (actionSheet == nil) {
        // setup actionsheet to contain the UIPicker
        actionSheet = [[UIActionSheet alloc] initWithTitle:@"Please select" delegate:self cancelButtonTitle:nil destructiveButtonTitle:nil otherButtonTitles:nil];
        actionSheet.backgroundColor = [UIColor clearColor];

        UIToolbar *pickerToolbar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, 320, 40)];
        pickerToolbar.barStyle = UIBarStyleBlackOpaque;
        [pickerToolbar sizeToFit];

        UIImageView *imageObj = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, 320, 40)];
        imageObj.image = [UIImage imageNamed:@"header.png"];
        [pickerToolbar addSubview:imageObj];

        UIButton *cancelBtn = [UIButton buttonWithType:UIButtonTypeCustom]; …
Run Code Online (Sandbox Code Playgroud)

iphone uipickerview uiactionsheet ios ios8

52
推荐指数
4
解决办法
3万
查看次数

你如何使UIPickerView组件环绕?

我想在UIPickerView组件中显示一组连续的数字,但它像Clock-> Timer应用程序的秒组件一样包围.我可以启用的唯一行为类似于Timer应用程序的hours组件,您只能在一个方向上滚动.

cocoa-touch uipickerview ios

40
推荐指数
2
解决办法
2万
查看次数

UIPicker检测当前所选行的点击

我有一个UIPickerView和,didSelectRow当点击选定的行时不调用该方法.我需要处理这个案子.有任何想法吗?

iphone select tap touch uipickerview

39
推荐指数
5
解决办法
2万
查看次数

如何从UIScrollView窃取触摸?

今天,在我的创作时间,我做了一些非常全面的研究,如何从UIScrollView窃取触摸并立即将它们发送到特定的子视图,同时保持其余滚动视图的默认行为.考虑在UITableView中使用UIPickerView.默认行为是,如果您将手指拖到选择器视图上,滚动视图将滚动,选择器视图将保持不变.

我尝试的第一件事是覆盖

- (BOOL)touchesShouldCancelInContentView:(UIView *)view
Run Code Online (Sandbox Code Playgroud)

并且根本不允许UIScrollView取消选择器视图内的触摸.这有效,但它有一个令人不快的副作用.您希望选择器视图立即响应,因此您必须设置delaysContentTouches为NO.问题是您不希望表视图的其余部分立即响应,因为如果确实如此,表视图单元将始终在滚动开始之前突出显示几毫秒.

我尝试的第二件事是覆盖

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
Run Code Online (Sandbox Code Playgroud)

因为我已经读过滚动视图总是返回自己,所以它会"窃取"其子视图中的触摸,然后如果它们对滚动视图不感兴趣则将它们发送到子视图.但是,这不再适用.UIScrollView的hitTest的默认实现:withEvent:实际上返回应该接收触摸的子视图.相反,它使用手势识别器来拦截触摸.

所以我尝试的第三件事就是实现我自己的手势识别器,如果触摸在选择器视图之外,则会导致失败,否则会成功.然后我将所有滚动视图的手势识别器设置为失败,除非我的手势识别器使用以下代码失败:

for (UIGestureRecognizer * gestureRecognizer in self.tableView.gestureRecognizers)
{
    [gestureRecognizer requireGestureRecognizerToFail:myRecognizer];
}
Run Code Online (Sandbox Code Playgroud)

事实上这实际上是从滚动视图中窃取了触摸,但是拾取器视图从未接收到它们.所以我可能只是发送我的手势识别器使用此代码接收的所有触摸:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    for (UITouch *touch in touches)
        [touch.view touchesBegan:touches withEvent:event];
}
Run Code Online (Sandbox Code Playgroud)

以上代码是简化版.我还确保视图是一个选择器视图(或其中一个子视图),并为上面提到的手势识别器设置适当的状态.我也做了同样的取消,结束和感动.但是,选择器视图仍然没有响应.

在回到我的日常工作之前,我还尝试了最后一件事.在我广泛的谷歌搜索过程中,我读到嵌套的UIScrollViews从3.x开始就神奇地工作了,所以我尝试将我的选择器视图放在嵌套的UIScrollView中并在其上设置以下属性:

scrollView.delaysContentTouches = NO;
scrollView.canCancelContentTouches = NO;
Run Code Online (Sandbox Code Playgroud)

正如人们所期望的那样,外部滚动视图不会处理内部滚动视图与处理选择器视图时的任何不同,因此内部滚动视图没有接收到触摸.我认为这是一个很长的镜头,但它很容易实现,所以我认为值得一试.

我所知道的是UIScrollView有一个名为UIScrollViewDelayedTouchesBeganGestureRecognizer截取触摸的手势识别器,并在150(?)ms之后将它们发送到适当的子视图.我想我应该能够写一个类似的识别器,导致滚动视图的默认识别器失败,而不是延迟触摸立即将它们发送到选择器视图.因此,如果有人知道如何编写这样的识别器,请告诉我,如果您有任何其他问题的解决方案,那么您也非常欢迎.

感谢您阅读整个问题,即使您不知道答案,您仍然可以提出问题,以便得到更多关注(希望能得到答案的人).谢谢!:)

iphone nested uiscrollview uipickerview ios4

38
推荐指数
1
解决办法
2万
查看次数

中心UIPickerView文本

所以我有一个uipickerview,其行只包含0-24号,看起来有点傻,因为数字是左对齐的,在pickerview的右边留下了巨大的空白.

有没有一种简单的方法可以在uipickerview中居中对齐文本?

iphone uipickerview iphone-sdk-3.0

37
推荐指数
4
解决办法
2万
查看次数

源类型1不可用

我有一个适用于iPhone和iPad的应用程序,当我尝试加载UIPickerViewController一个UIPopoverController用于iPad,我得到了异常"源类型1不可用".即使使用该设备也会出现问题.

@try {
    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])  {
        UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];

        imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
        imagePicker.delegate = self;
        imagePicker.allowsEditing = NO;

        self.tempComp = component;
        if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
            [self presentModalViewController:imagePicker animated:YES];
        }else {
            // We are using an iPad
            popoverController=[[UIPopoverController alloc] initWithContentViewController:imagePicker];
            popoverController.delegate = self;

            [popoverController presentPopoverFromRect:component.bounds inView:component permittedArrowDirections:UIPopoverArrowDirectionAny animated:YES];
        }
    }else{
        UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Camera Non Disponibile" message:@"La camera non è disponibile" delegate:self cancelButtonTitle:@"Ok" otherButtonTitles: nil];
        [alert show];
    } …
Run Code Online (Sandbox Code Playgroud)

uipickerview uipickerviewcontroller ipad uipopovercontroller ios

37
推荐指数
2
解决办法
2万
查看次数

我可以以编程方式滚动到UIPickerView中的所需行吗?

默认情况下,初始化UIPickerView后会突出显示第一行.如何突出显示特定行或以编程方式滚动到特定行?

objective-c uipickerview ios swift

36
推荐指数
3
解决办法
3万
查看次数

自定义UIDatePicker for iOS7的文本颜色(就像Mailbox一样)

我陷入了最令人沮丧的困境.我上下研究过,可以清楚地看到Apple不希望我们篡改iOS 7.好吧,我想篡改.而且,Mailbox的团队清楚地知道如何做到这一点并获得批准.

我想要实现的主要是将标签颜色更改为白色.

邮箱UIDatePicker

我的第一个想法是他们使用的是模仿UIDatePicker的自定义UIPickerView,但我不认为是这种情况.

我放大了一个小片段,发现了正常UIDatePicker(黑线)的残余以及字母"W"上的剪辑.

邮箱UIDatePicker片段

现在我已经高高低调了.做了一些运行时黑客攻击,与UIAppearance混淆,甚至挖到一些私有API只是为了看看这是否可行.

我接近,非常接近,但它使用了私有API,如果你滚动得足够快,标签会再次变黑.

如果没有a)违反规则或b)花费无数小时重新实现UIDatePicker,我完全不知道如何做到这一点.

邮箱,告诉我你的秘密!如果其他人有任何建议(我的意思是任何建议),请告诉我.

此外,这是我得到的最接近的:

到目前为止如此接近

uidatepicker uipickerview uikit ios uiappearance

36
推荐指数
4
解决办法
2万
查看次数

36
推荐指数
7
解决办法
2万
查看次数