我遇到问题,如何将uitextview
中的图片替换为图标,当我点按此图标时,图片显示
此示例
感谢每一个
答案 0 :(得分:1)
您可以将图片视图添加为UITextView的子视图。
使用图片创建imageView:
UIImageView *imageView = [[UIImageView alloc] initWithImage:yourImage];
[imageView setFrame:yourFrame];
[yourTextView addSubview:imageView];
如果你想通过点击显示图片,那么请点击 UIButton &为它分配图像&将其添加为UITextView的子视图 点按后只需将UIButton的图像从图标更改为图像
答案 1 :(得分:1)
创建对imageview的引用并将其从superview中删除,并使用您的图标图像创建新的图像视图,并将其添加到textview中。如果您在textview的顶部添加图像视图,它将在textview中隐藏您的文本。
添加textview
.m文件中的
> UITextView *textView; UIImageView *testImageView;
>
> -(void)addMyTextViewWithImage{
> self.textView = [[UITextView alloc]initWithFrame:CGRectMake(50.0f, 50.0f, 200.0f, 200.0f)];
> self.textView.inputView = [[UIView alloc]initWithFrame:CGRectMake(0.0f, 0.0f, 0.0f, 0.0f)];
> self.textView.backgroundColor = [UIColor blackColor];
> self.textView.textColor = [UIColor whiteColor];
> self.textView.font = [UIFont fontWithName:@"HelveticaNeue-UltraLight" size:30];
> self.textView.text = @"Lorem ipsum dolor sit er elit lamet, consectetaur cillium adipisicing pecu, sed do eiusmo to factor tum
> poen legum odioque civiuda.";
> self.testImageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"yourimage.png"]];
> [self.testImageView setFrame:CGRectMake(10, 10, 150, 30)];
> [self.textView addSubview:self.testImageView];
> [self.view addSubview:self.textView]; }
>
> -(void)removeAndUpdateWithIconImage{
> //Remove my imageview from text view
> [self.testImageView removeFromSuperView];
>
> //Add the imageview with desire frame and icon image
> self.testImageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"icon.png"]];
> [self.testImageView setFrame:CGRectMake(10, 10, 150, 30)];
> [self.textView addSubview:self.testImageView];
>
>
> }
答案 2 :(得分:1)
图像是存储在NSAttributedString中的NSTextAttachment,因此要将其更改为您需要创建自己的NSTextAttachment子类并用您自己的子类替换默认附件的图标。在子类中,您需要将图标作为图像返回。我做了类似的事情,除了我只是调整图像大小以适应设备显示区域,但我保留原始图像,以便可以全分辨率查看。如果这听起来像你想要做的那样,请告诉我,我会挖出代码。顺便说一句,你可以查看免费的应用程序,看看uitextview是如何工作的,它叫做iWalletFree,或者是iProjectFree。有Mac和iOS版本,每个代码都不同。
这是link to the post where I just posted some details on image handling in UITextView and NSTextView。