ios24--改变button的文字和图片
//
// ViewController.m
// 09-UIButton内部子控件的调整
//
// Created by xiaomage on 15/12/30.
// Copyright © 2015年 小码哥. All rights reserved.
// #import "ViewController.h"
#import "XMGButton.h" @interface ViewController () @end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
// 1.1 创建按钮
UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; // 1.2 设置frame
button.frame = CGRectMake(, , , );//不设置fram看不见 // 1.3 设置背景颜色
button.backgroundColor = [UIColor purpleColor]; // 1.4 设置文字
[button setTitle:@"普通按钮" forState:UIControlStateNormal]; // 1.5 设置内容图片
[button setImage:[UIImage imageNamed:@"miniplayer_btn_playlist_normal"] forState:UIControlStateNormal]; // 1.6 改变位置
button.imageView.backgroundColor = [UIColor yellowColor];
button.titleLabel.backgroundColor = [UIColor blueColor]; // 注意: 在按钮外面改的尺寸,按钮的内部都会覆盖掉
/*
button.titleLabel.frame = CGRectMake(0, 0, 100, 70);
button.imageView.frame = CGRectMake(100, 0, 70, 70);
*/ [button titleRectForContentRect:CGRectMake(, , , )];
[button imageRectForContentRect:CGRectMake(, , , )]; [self.view addSubview:button];//不连线,就通过addSubview。
} @end
//
// XMGButton.h
// 09-UIButton内部子控件的调整
// #import <UIKit/UIKit.h> @interface XMGButton : UIButton @end
//
// XMGButton.m
// 09-UIButton内部子控件的调整
// #import "XMGButton.h" @implementation XMGButton - (instancetype)initWithFrame:(CGRect)frame{
if (self = [super initWithFrame:frame]) {
// 文本居中
self.titleLabel.textAlignment = NSTextAlignmentCenter;
// 改变图片的内容模式
self.imageView.contentMode = UIViewContentModeCenter;
}
return self;
} #pragma mark - 方式一
/**
* 重写两个方法: 不要调用super,就是要重写掉
* contentRect: 内容的尺寸,内容包括(imageView和label)
*/
/*
- (CGRect)titleRectForContentRect:(CGRect)contentRect{
return CGRectMake(0, 0, 100, 70);
} - (CGRect)imageRectForContentRect:(CGRect)contentRect{
return CGRectMake(100, 0, 70, 70);
}
*/ #pragma mark - 方式二
- (void)layoutSubviews{
[super layoutSubviews];
// 设置子控件的位置
self.titleLabel.frame = CGRectMake(, , , );
self.imageView.frame = CGRectMake(, , , );
} @end
ios24--改变button的文字和图片的更多相关文章
- Android实现自定义带文字和图片的Button
Android实现自定义带文字和图片的Button 在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法. 一.用系统自带的Button实现 最简单的一种办法就 ...
- iOS Button 上文字图片位置的设置
1. 添加图片+文字/文字+图片 ,不分前后,图片默认在文字前边 加空格隔开 UIButton * button =[[UIButton alloc] initWithFrame:CGRectMake ...
- 【Android】Android实现自定义带文字和图片的Button
在Android开发中经常会需要用到带文字和图片的button,下面来讲解一下常用的实现办法. 一.用系统自带的Button实现 最简单的一种办法就是利用系统自带的Button来实现,这种方式代码量最 ...
- 【转】UGUI之用脚本动态的改变Button的背景图片 和 颜色
http://blog.csdn.net/u014771617/article/details/45102701 public Button button;void Start(){ColorBloc ...
- android带有文字的图片按钮的两种实现方式
android带有文字的图片按钮的两种实现方式 1). TextView对Button用相对布局,这要要求按钮的背景图片要留下空白位置给文字.这种方式开发比较简单,适合做一些风格一致的Button. ...
- iOS·UIButton如何文字在下图片在上
创建子类继承自UIButton,在layoutSubviews方法中改变文字和图片的位置就可以了,同理,稍作改变,可以写出文字在上图片在下.本文只给出文字在下图片在上的代码 -(void)layout ...
- Android(java)学习笔记139:在TextView组件中利用Html插入文字或图片
首先我们看看代码: 1.activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/r ...
- Android应用程序之间共享文字和图片(一)
以下为TestReceiveShare1工程 MainActivity如下: package cn.testreceiveshare1; import java.util.ArrayList; imp ...
- Android应用程序之间共享文字和图片(二)
MainActivity如下: package cn.testshare1; import java.io.File; import java.util.ArrayList; import andro ...
随机推荐
- js 实现弹力球效果
1.html代码: <div id='imgid'> <img src="img/5.png"> </div> 2.js代码: imgobj=d ...
- 禁止浏览器static files缓存篇
由于CSS/JS文件经常需要改动,前端调试时是不希望浏览器缓存这些文件的. Meta法 目前在chrome调试还没有遇到问题,好用!此方法假设浏览器是个好人!很听我们的话! <meta http ...
- 解决mysql时区问题以及SSL问题
看了下网上的教程,觉得都太麻烦啦,这里推荐个简单的! 解决时区问题 只需要加上serverTimezone=UTC即可,如下: spring.datasource.url=jdbc:mysql://1 ...
- Mysql:sql语句
练习的表可以在博客的文件中下载 基础知识: 1.数据库的连接 mysql -u -p -h -u 用户名 -p 密码 -h host主机 2:库级知识 2.1 显示数据库: show database ...
- 【Python实践-10】用sorted()对列表排序
#按名字排序 l2= [('Bob', 75), ('Adam', 92), ('Bart', 66), ('Lisa', 88)] def by_name(t): return t[0] l2=so ...
- HTML、CSS常用技巧
一.HTML 在介绍HTML之前,我们先看一下HTML的文档树结构,主要包括哪些: (一).头部标签 1,Doctype Doctype告诉浏览器使用什么样的HTML或XHTML规范来解析HTML文档 ...
- java读utf8 的txt文件,第一个字符为空或问号问题
参考:https://blog.csdn.net/yangzhichao888/article/details/79529756 https://blog.csdn.net/wangzhi291/ar ...
- UVALive 6507 Passwords
Passwords Time Limit: 3000ms Memory Limit: 131072KB This problem will be judged on UVALive. Original ...
- 编程数学-∑(求和符号)-Sigma
百度百科:∑ 在数学中,我们把它作为求和符号使用. 大写Σ用于数学上的总和符号,比如:∑Pi,其中i=1,2,...,T,即为求P1 + P2 + ... + PT的和.小写σ用于统计学上的标准差.西 ...
- 【HDOJ3047】Zjnu Stadium(带权并查集)
题意:浙江省第十二届大学生运动会在浙江师范大学举行,为此在浙师大建造了一座能容纳近万人的新体育场. 观众席每一行构成一个圆形,每个圆形由300个座位组成,对300个座位按照顺时针编号1到300,且可以 ...