iOS UIlabel添加照片 UITextView 文字/照片點(diǎn)擊事件

iOS UIlabel添加照片 UITextView 文字/照片點(diǎn)擊事件

根據(jù)產(chǎn)品需求需要文本的行末添加一個(gè)圖標(biāo)或者圖片赚导,并可實(shí)現(xiàn)部分文字的點(diǎn)擊和照片的點(diǎn)擊事件

效果圖

方案1:添加的圖片是iconfont圖標(biāo)裳瘪。iconfont,從字面上就能理解它就是字體筑凫,讓開發(fā)者像使用字體一樣使用圖標(biāo)。

    UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(50, 160, 280, 40)];
    [self.view addSubview:label];
    label.font = [UIFont fontWithName:@"iconfont" size:15];//設(shè)置label的字體
    label.text = @"這是用label顯示的iconfont  \U0000e60c";

如果不顯示侣监,請檢查一下iconfont的資源文件是否在工程目錄下。

檢查資源文件

plist文件配置

方案2:通過 NSMutableAttributedString 在文本末尾添加一個(gè)照片

    UILabel *titleLabel = [[UILabel alloc]init];
    titleLabel.frame = CGRectMake(10, 300, 100, 200);
    titleLabel.backgroundColor = [UIColor redColor];
    [self.view addSubview:titleLabel];

    NSTextAttachment *attachment = [[NSTextAttachment alloc]init];
    attachment.image = [UIImage imageNamed:@"eys"];
    NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:@"我的后面跟著一個(gè)照片"];
    [attributedString addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:NSMakeRange(0, 10)];
    [attributedString addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:20] range:NSMakeRange(0, 10)];
    NSAttributedString *attachmentString = [NSAttributedString attributedStringWithAttachment:attachment];
    [attributedString insertAttributedString:attachmentString atIndex:10];
    titleLabel.attributedText = attributedString;
    titleLabel.numberOfLines = 0;
    [titleLabel sizeToFit];

UITextView 文字/照片點(diǎn)擊事件

 NSMutableAttributedString *attributeString2 = [[NSMutableAttributedString alloc]initWithString:@"哈哈哈哈哈哈哈哈,你還沒有中獎(jiǎng)浇雹,趕快去參加活動(dòng)"];
    [attributeString2 addAttribute:NSLinkAttributeName value:@"click://" range:[[attributeString2 string]rangeOfString:@"參加活動(dòng)"]];
    NSTextAttachment *attachment2 = [[NSTextAttachment alloc]init];
    attachment2.image = [UIImage imageNamed:@"eys"];
    attachment2.bounds = CGRectMake(0, 0, 15, 15);
    NSAttributedString *attachmentString2 = [NSAttributedString attributedStringWithAttachment:attachment2];
    NSMutableAttributedString *imgAttribute = [[NSMutableAttributedString alloc]initWithAttributedString:attachmentString2];
    [imgAttribute addAttribute:NSLinkAttributeName value:@"IMGURL://" range:NSMakeRange(0, imgAttribute.length)];
    [attributeString2 insertAttributedString:imgAttribute atIndex:[attributeString2 string].length];

    UITextView *textView  = [[UITextView alloc]initWithFrame:CGRectMake(20,400 , 200, 220)];
    [self.view addSubview:textView];
    textView.attributedText = attributeString2;
    textView.linkTextAttributes = @{NSForegroundColorAttributeName:[UIColor blueColor],NSUnderlineColorAttributeName:[UIColor grayColor]};
    textView.font = [UIFont systemFontOfSize:18];
    textView.textAlignment = NSTextAlignmentLeft;
    textView.backgroundColor = [UIColor brownColor];
    textView.delegate = self;
    textView.editable = NO;
    textView.scrollEnabled = NO;
    [self.view addSubview:textView];
    self.curentView = textView;

UItextView的代理方法

-(BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange interaction:(UITextItemInteraction)interaction {
    
    NSLog(@"打印獲取到的url的字符串為----%@",[URL scheme]);
    
    if ([[URL scheme] isEqualToString:@"click"]) {

        NSLog(@"執(zhí)行了文字的點(diǎn)擊事件");
        UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"文字被點(diǎn)擊了" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"我知道了", nil];
        [alertView show];
        
        return NO;
        
    }else if ([[URL scheme] isEqualToString:@"IMGURL"]) {
        
        UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"照片被點(diǎn)擊了" delegate:nil cancelButtonTitle:nil otherButtonTitles:@"我知道了", nil];
        [alertView show];
        NSLog(@"執(zhí)行了點(diǎn)擊末尾的照片");
        
    }
    return YES;
 
}

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市屿讽,隨后出現(xiàn)的幾起案子昭灵,更是在濱河造成了極大的恐慌,老刑警劉巖伐谈,帶你破解...
    沈念sama閱讀 217,406評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件烂完,死亡現(xiàn)場離奇詭異,居然都是意外死亡诵棵,警方通過查閱死者的電腦和手機(jī)抠蚣,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,732評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來履澳,“玉大人嘶窄,你說我怎么就攤上這事【啻” “怎么了柄冲?”我有些...
    開封第一講書人閱讀 163,711評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長忠蝗。 經(jīng)常有香客問我现横,道長,這世上最難降的妖魔是什么阁最? 我笑而不...
    開封第一講書人閱讀 58,380評(píng)論 1 293
  • 正文 為了忘掉前任戒祠,我火速辦了婚禮,結(jié)果婚禮上速种,老公的妹妹穿的比我還像新娘得哆。我一直安慰自己,他們只是感情好哟旗,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,432評(píng)論 6 392
  • 文/花漫 我一把揭開白布贩据。 她就那樣靜靜地躺著,像睡著了一般闸餐。 火紅的嫁衣襯著肌膚如雪饱亮。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,301評(píng)論 1 301
  • 那天舍沙,我揣著相機(jī)與錄音近上,去河邊找鬼。 笑死拂铡,一個(gè)胖子當(dāng)著我的面吹牛壹无,可吹牛的內(nèi)容都是我干的葱绒。 我是一名探鬼主播,決...
    沈念sama閱讀 40,145評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼斗锭,長吁一口氣:“原來是場噩夢啊……” “哼地淀!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起岖是,我...
    開封第一講書人閱讀 39,008評(píng)論 0 276
  • 序言:老撾萬榮一對情侶失蹤帮毁,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后豺撑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體烈疚,經(jīng)...
    沈念sama閱讀 45,443評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,649評(píng)論 3 334
  • 正文 我和宋清朗相戀三年聪轿,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了爷肝。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,795評(píng)論 1 347
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡陆错,死狀恐怖阶剑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情危号,我是刑警寧澤,帶...
    沈念sama閱讀 35,501評(píng)論 5 345
  • 正文 年R本政府宣布素邪,位于F島的核電站外莲,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏兔朦。R本人自食惡果不足惜偷线,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,119評(píng)論 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望沽甥。 院中可真熱鬧声邦,春花似錦、人聲如沸摆舟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,731評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽恨诱。三九已至媳瞪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間照宝,已是汗流浹背蛇受。 一陣腳步聲響...
    開封第一講書人閱讀 32,865評(píng)論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留厕鹃,地道東北人兢仰。 一個(gè)月前我還...
    沈念sama閱讀 47,899評(píng)論 2 370
  • 正文 我出身青樓乍丈,卻偏偏與公主長得像,于是被迫代替她去往敵國和親把将。 傳聞我的和親對象是個(gè)殘疾皇子轻专,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,724評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • Text Kit學(xué)習(xí)(入門和進(jìn)階): http://www.cocoachina.com/industry/201...
    F麥子閱讀 4,035評(píng)論 1 13
  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫、插件秸弛、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,102評(píng)論 4 62
  • 一铭若、簡介 <<UITextView(文本視圖) : UITextView可以輸入多行文字并且可以滾動(dòng)顯示瀏覽全文的...
    無邪8閱讀 8,315評(píng)論 6 1
  • 七年前叼屠,當(dāng)我第一次踏上北歐的土地,內(nèi)心除了喜悅绞铃,還有深深地向往镜雨。喜歡這里清新又涼爽的空氣,廣袤的大地儿捧,美麗的小房子...
    陪一顆心長大的故事閱讀 222評(píng)論 2 7
  • 天空飄來飄去的云染了灰色 肯定會(huì)有一場暴風(fēng)雨吧 一陣風(fēng)來 聽見你說你要走了 別走荚坞,你走了誰呵護(hù)我 別走,你走了誰還...
    栩辰徉閱讀 338評(píng)論 1 7