我正在尝试构建我的第一个iPhone应用程序,一个柏林博物馆指南,我在确定如何设计特定视图方面遇到了一些麻烦。之前我用Photoshop做了我所有观点的模型,但现在实际上在Xcode中实现它是其他的东西,当然: - )
所以,这就是我想要的:
[我本来要在这里发布一张图片,但由于我是新手,我没有足够的声誉来张贴图片。]
在此处查找图片: http://img9.uploadhouse.com/fileuploads/13445/13445099d5adea77b02fe1d76755da6b81c92634.png
我想要一个白色的盒子里面有几个文字部分。一个大标题,一个较小的标题和一个放在图像旁边的较长文本。其中的文本由我的核心数据模型提供,并根据用户正在查看的展览进行更改。
第一个问题:是否有“圆角对象的白框”,我可以放置文字,图像等,或者我必须将其作为自定义图像导入?在这种情况下,如果我希望盒子改变它的大小,我就会遇到问题,就像简单地缩放图像一样,圆角会变形。我假设采用顶部和底部的CSS-stye方法 - 图像和使用repeat-y属性或类似的东西做中间部分在objective-c中不起作用,对吗?
第二个问题:对于如何处理文本扩展的事情,有没有人有好的建议?我希望描述文本最初只是一个预告片,所以它不会占用整个屏幕。如果用户想要继续阅读,则在点击“更多”按钮时,该框应该展开并显示整个文本。 这个理论太多了......我对如何完成这项工作有点无能为力,希望有人可能会对此有一些好的意见。
非常感谢您花时间帮助新手: - )
答案 0 :(得分:2)
我不会使用b / g图像,因为你会注意到垂直扩展会出现问题。我宁愿使用常规UIView
和跟随方法来使其角落成为圆角。
#import <QuartzCore/QuartzCore.h>
view.layer.cornerRadius = 5;
至于文字扩展。我不会尝试使图像包装文本,因为它很难。
对于自动UITextView
调整,您可以执行以下操作。
示例:
#define MOVE_ANIMATION_DURATION_SECONDS 0.5
-(void)maximize:(BOOL)animated{
if(animated){
[UIView beginAnimations:nil context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:MOVE_ANIMATION_DURATION_SECONDS];
[UIView setAnimationDelegate:self];
[self setMaximizedViewState];
[UIView commitAnimations];
}else
[self setMaximizedViewState];
}
-(void)minimize:(BOOL)animated{
if(animated){
[UIView beginAnimations:nil context:nil];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:MOVE_ANIMATION_DURATION_SECONDS];
[UIView setAnimationDelegate:self];
[self setMinimizedViewState];
[UIView commitAnimations];
}else
[self setMinimizedViewState];
}
-(void)setMinimizedViewState{
isMinimized = YES;
//Adjust the UITextView's frame and other properties
}
-(void)setMaximizedViewState{
isMinimized = NO;
//Adjust the UITextView's frame and other properties
}