首页 \ 问答 \ 在XIB中淡入/淡出UISegmentedControl(fade in/fade out UISegmentedControl in XIB)

在XIB中淡入/淡出UISegmentedControl(fade in/fade out UISegmentedControl in XIB)

我在我的XIB中设置了UISegmentedControl。 我希望它出现在viewDidLoad上,如果用户点击它所在的屏幕区域,然后如果用户再次点击它就会消失,或者如果用户不管它就淡出。

在四处寻找如何管理这个问题时,我发现了很多关于淡化UIViews的东西,但是没有那么多关于淡化个别子视图的东西,也没有关于XIB中淡化元素的东西。 我试图调整UIView的东西,但失败了。

我怎样才能做到这一点?

编辑:好的,我已经在viewDidLoad和淡出工作的外观。 但是当用户点击UISegmentedControl所在的区域(现在因alpha = 0而不可见)时,没有任何反应。 这是我正在使用的代码:

- (IBAction)tapInvisibleSegContr
//This is connected to the UISegmentedControl with the action Touch Up Inside.  Until now, the segmented control has been at alpha=0 since fading after viewDidLoad.
{
    self.segContrAsOutlet.alpha=1.0;
    [self fadeMethodThatWorksInViewDidLoad];
    NSLog(@"Yup, tapped.");
}

我甚至没有得到NSLog。 我已经将动作连接到UISegmentedControl,其动作是Touch Up Inside。 我错过了什么?


I have a UISegmentedControl set up in my XIB. I want it to appear on viewDidLoad and if the user taps the area of the screen it's in, and then to disappear if the user taps it again or to fade out if the user leaves it alone.

In looking around for how to manage this I've found a lot of stuff about fading UIViews, but not as much on fading individual subviews, and little at all on fading elements in the XIB. I tried to adapt the UIView stuff but failed.

How can I make this work?

EDIT: Okay, I've got the appearance at viewDidLoad and the fade out working. But when the user taps the area where the UISegmentedControl is (now invisible because alpha=0), nothing happens. This is the code I'm using:

- (IBAction)tapInvisibleSegContr
//This is connected to the UISegmentedControl with the action Touch Up Inside.  Until now, the segmented control has been at alpha=0 since fading after viewDidLoad.
{
    self.segContrAsOutlet.alpha=1.0;
    [self fadeMethodThatWorksInViewDidLoad];
    NSLog(@"Yup, tapped.");
}

I'm not even getting the NSLog. I've got the action hooked up to the UISegmentedControl, with the action Touch Up Inside. What am I missing?


原文:https://stackoverflow.com/questions/12171934
更新时间:2020-03-20 22:15

最满意答案

如果它驻留在xib中,只需将其alpha设置为0,执行正确的连接:Outlet和IBAction for value changed
然后在[super viewDidLoad]之后的viwDidLoad写:

[UIView animateWithDuration:1 animations:^{self.mySegOutlet.alpha = 1;}];

在最后一次写入之前编写答案之后,在IBAction内部:

[UIView animateWithDuration:1 animations:^{self.mySegOutlet.alpha = 0;}];

这是最简单的方法。
再见


If it is resident in a xib, just put his alpha to 0, do the properly connections: an Outlet and an IBAction for value changed
Then in the viwDidLoad right after [super viewDidLoad] write:

[UIView animateWithDuration:1 animations:^{self.mySegOutlet.alpha = 1;}];

Inside the IBAction right after you code the answer before the last } write:

[UIView animateWithDuration:1 animations:^{self.mySegOutlet.alpha = 0;}];

This is the easiest method.
Bye

2012-08-29

相关文章

更多

最新问答

更多
  • 如何避免MDIParent表单调整大小(How do I avoid MDIParent form from resizing)
  • Angular自定义指令调用另一个自定义指令(Angular custom directive calling another custom directive)
  • 如何通过参数将文本解析并附加到SQL Server 2005中的存储过程(How to Parse and Append text to a stored procedure in SQL Server 2005 via a parameter)
  • OpenCV中心Homography(OpenCV Center Homography)
  • 如何在linux shell脚本中计算日期-N?(How to calculate date -N in linux shell scripting?)
  • 如何使用Devise创建用户配置文件?(How Do I Create a User Profile With Devise?)
  • 清理模式以管理树上的多步异步过程(Clean pattern to manage multi-step async processes on a tree)
  • 场景的角色(Role of the Scene)
  • 组件中的Angular 2组件[重复](Angular 2 Component In Component [duplicate])
  • jsPlumb draggable element javascript函数(jsPlumb draggable element javascript function)
  • MVC4:ViewModel(带有radiobuttonlist)在HttpPost之后为空(MVC4: ViewModel (with radiobuttonlist) is empty after HttpPost)
  • 如何在同一帐户上设置“Dev repo”(在prod和团队之间)(How to set up a “Dev repo” (between the prod and the team) on the same account)
  • 如何在tcl中将eth0配置为发送方udp端口(how to configure eth0 as a sender udp port in tcl)
  • 如何使用预定义文本替换来自数据库的部分结果(How do I replace part of result coming from Database with predefined text)
  • Selenium Java注入了新的Javascript函数(Selenium Java inject new Javascript function)
  • 使用.on的多个下拉菜单选择文本仅适用于第一个下拉列表(Multiple Dropdowns Menu Selection text using .on works only on first dropdown)
  • 快速将黄土曲线添加到大型数据集图中的方法(Quick way to add loess curve to large data set graph)
  • FilteringSelect in mvc(FilteringSelect in mvc)
  • 在Delphi XE2中开发Mac或iOS应用程序需要哪些硬件/软件?(What hardware/software is necessary to develop Mac or iOS apps in Delphi XE2?)
  • 在原型的构造函数中初始化属性时获取“未定义”(Getting 'undefined' when a property is initialized in the constructor of a prototype)
  • 通过越狱加载的应用程序的Documents文件夹位置(Location of Documents folder for an app loaded via jailbreak)
  • 在OpenGL中使用可编程和固定管道功能(Using both programmable and fixed pipeline functionality in OpenGL)
  • 将任何用户输入重定向到单独的底层程序(redirect any user input to a separate underlying program)
  • 编辑文本不能正常工作android(Edit texts not working properly android)
  • “user_denied”Facebook应用页面上的Facebook用户区域设置(Facebook user locale on “user_denied” facebook app page)
  • 在大图像中找到小的部分透明图像的坐标(find coordinates of small partially-transparent image within a large image)
  • 我如何在cakephp 3.1中获得完整的相对路径?(How i can get full relative path of image in cakephp 3.1?)
  • 如何保存拖动标记的新本地化?(How to save new localization of dragged marker?)
  • MySQL UPDATE vs INSERT和DELETE(MySQL UPDATE vs INSERT and DELETE)
  • 在执行查询之前,在SQLAlchemy模型中将datetime转换为unix时间戳?(Convert datetime to unix timestamp in SQLAlchemy model before executing query?)