- 論壇徽章:
- 0
|
iOS的Widget類似Android的Notification設(shè)置flags為Notification.FLAG_ONGOING_EVENT后
1.png (55.82 KB, 下載次數(shù): 68)
下載附件
2015-06-16 09:21 上傳
2.jpg (387.81 KB, 下載次數(shù): 83)
下載附件
2015-06-16 09:21 上傳
OK,大約知道是什么意思了,現(xiàn)在可以開始碼了.
1.創(chuàng)建Widget
Xcode菜單 -> File -> New -> Target.. -> 選擇Today Extension
3.png (110.53 KB, 下載次數(shù): 79)
下載附件
2015-06-16 09:22 上傳
4.png (63.69 KB, 下載次數(shù): 74)
下載附件
2015-06-16 09:22 上傳
2.在plist文件里設(shè)置純代碼的Widget
刪掉NSExtensionMainStoryboard字段
添加NSExtensionPrincipalClass字段,設(shè)置value為TodayViewController,當(dāng)然也可以設(shè)置其他的ViewController
5.png (39.63 KB, 下載次數(shù): 62)
下載附件
2015-06-16 09:23 上傳
3.運(yùn)行的時候選擇Today
6.png (33.08 KB, 下載次數(shù): 76)
下載附件
2015-06-16 09:23 上傳
4.添加一些控件看看效果- - (void)viewDidLoad {
- [super viewDidLoad];
-
- //添加一個button,點(diǎn)擊button后改變背景的顏色
- UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
- [button setTitle:@"點(diǎn)擊一下" forState:UIControlStateNormal];
- button.backgroundColor = [UIColor whiteColor];
- [button addTarget:self action:@selector(clickAction) forControlEvents:UIControlEventTouchUpInside];
- button.frame = CGRectMake(50, 10, 100, 30);
- [self.view addSubview:button];
-
- }
- - (void)clickAction{
- self.view.backgroundColor = [UIColor redColor];
- }
復(fù)制代碼 效果如圖
7.gif (779.81 KB, 下載次數(shù): 69)
下載附件
2015-06-16 09:24 上傳
看效果圖你會發(fā)現(xiàn),左邊還空了一大塊,原因是Widget默認(rèn)會有一個inset,重寫下面的方法就好了- -(UIEdgeInsets)widgetMarginInsetsForProposedMarginInsets:(UIEdgeInsets)defaultMarginInsets {
- return UIEdgeInsetsZero;
- }
復(fù)制代碼 最終的效果如下:
8.gif (442.64 KB, 下載次數(shù): 64)
下載附件
2015-06-16 09:25 上傳
|
|