Iphone代碼創建視圖

要想以編程的方式創建視圖,需要使用視圖控制器中定義的viewDidLoad方法,只有在運行期間生成UI時才需要實現該方法。

在此只貼出viewDidLoad方法的代碼,因為只需要在這個方法里面編寫代碼:

[cpp] view plaincopyprint?
  1. -?(void)viewDidLoad??
  2. {??
  3. ????self.navigationItem.title?=?@"動態創建UI";??
  4. ????UIView?*myview?=?[[UIView?alloc]initWithFrame:[UIScreen?mainScreen].applicationFrame];??
  5. ????myview.backgroundColor?=?[UIColor?blackColor];??
  6. ??????
  7. ????CGRect?frame?=?CGRectMake(10,?15,?300,?20);??
  8. ????UILabel?*mylabel?=?[[UILabel?alloc]initWithFrame:frame];??
  9. ????mylabel.text?=?@"這是動態創建的label";??
  10. ????mylabel.backgroundColor?=?[UIColor?clearColor];??
  11. ????mylabel.font?=?[UIFont?fontWithName:@"Verdana"?size:20];??
  12. ????mylabel.textColor?=?[UIColor?lightGrayColor];??
  13. ????mylabel.textAlignment?=?UITextAlignmentCenter;??
  14. ??????
  15. ????frame?=?CGRectMake(10,?70,?300,?50);??
  16. ????//UIButton?*mybutton?=?[[UIButton?alloc]initWithFrame:frame]; ??
  17. ????UIButton?*mybutton?=?[UIButton?buttonWithType:UIButtonTypeRoundedRect];??
  18. ????mybutton.frame?=?frame;??
  19. ????[mybutton?setTitle:@"點我"?forState:UIControlStateNormal];??
  20. ????mybutton.backgroundColor?=?[UIColor?clearColor];??
  21. ????[mybutton?addTarget:self?action:@selector(buttonclc)?forControlEvents:UIControlEventTouchUpInside];??
  22. ????[myview?addSubview:mylabel];??
  23. ????[myview?addSubview:mybutton];??
  24. ????self.view?=?myview;??
  25. ????[mylabel?release];??
  26. ????[super?viewDidLoad];??
  27. ????//?Do?any?additional?setup?after?loading?the?view?from?its?nib. ??
  28. }??
- (void)viewDidLoad
{
self.navigationItem.title = @"動態創建UI";
UIView *myview = [[UIView alloc]initWithFrame:[UIScreen mainScreen].applicationFrame];
myview.backgroundColor = [UIColor blackColor];
CGRect frame = CGRectMake(10, 15, 300, 20);
UILabel *mylabel = [[UILabel alloc]initWithFrame:frame];
mylabel.text = @"這是動態創建的label";
mylabel.backgroundColor = [UIColor clearColor];
mylabel.font = [UIFont fontWithName:@"Verdana" size:20];
mylabel.textColor = [UIColor lightGrayColor];
mylabel.textAlignment = UITextAlignmentCenter;
frame = CGRectMake(10, 70, 300, 50);
//UIButton *mybutton = [[UIButton alloc]initWithFrame:frame];
UIButton *mybutton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
mybutton.frame = frame;
[mybutton setTitle:@"點我" forState:UIControlStateNormal];
mybutton.backgroundColor = [UIColor clearColor];
[mybutton addTarget:self action:@selector(buttonclc) forControlEvents:UIControlEventTouchUpInside];
[myview addSubview:mylabel];
[myview addSubview:mybutton];
self.view = myview;
[mylabel release];
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
}

解釋下上面的代碼:

上面代碼有三段:

第一段創建的是UIView對象,它可以作為容器容納其他視圖。

第二段是創建一個Label視圖。

第三段是創建一個UIButton視圖。

注意,千萬不要忘記將創建的視圖加入第一步創建的view中,也不要忘記了將創建的view賦值給當前窗口的view:

[cpp] view plaincopyprint?
  1. [myview?addSubview:mylabel];??
  2. ????[myview?addSubview:mybutton];??
  3. ????self.view?=?myview;??
[myview addSubview:mylabel];
[myview addSubview:mybutton];
self.view = myview;

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/388354.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/388354.shtml
英文地址,請注明出處:http://en.pswp.cn/news/388354.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

聊聊flink Table的OrderBy及Limit

序 本文主要研究一下flink Table的OrderBy及Limit 實例 Table in tableEnv.fromDataSet(ds, "a, b, c"); Table result in.orderBy("a.asc");Table in tableEnv.fromDataSet(ds, "a, b, c");// returns the first 5 records from the sorted …

binary masks_Python中的Masks概念

binary masksAll men are sculptors, constantly chipping away the unwanted parts of their lives, trying to create their idea of a masterpiece … Eddie Murphy所有的人都是雕塑家,不斷地消除生活中不必要的部分,試圖建立自己的杰作理念……埃迪墨…

css+沿正方形旋轉,CSS3+SVG+JS 正方形沿著正方本中軸移動翻轉的動畫

CSS語言:CSSSCSS確定* {margin: 0;padding: 0;fill: currentColor;vector-effect: non-scaling-stroke;}html {overflow: hidden;}body {display: flex;flex-direction: column;margin: 0;min-width: 10em;height: 100vh;}body > svg,body > input,body > …

Iphone在ScrollView下點擊TextField使文本筐不被鍵盤遮住

1.拖一個Scroll View視圖填充View窗口&#xff0c;將Scroll View視圖拖大一些&#xff0c;使其超出屏幕。 2.向Scroll View拖&#xff08;添加&#xff09;多個Label視圖和Text View視圖。 3.在.h頭文件中添加如下代碼&#xff1a; [cpp] view plaincopyprint?#import <U…

兩高發布司法解釋 依法嚴懲涉地下錢莊犯罪

新華社北京1月31日電&#xff08;記者丁小溪&#xff09;最高人民法院、最高人民檢察院31日聯合發布關于辦理非法從事資金支付結算業務、非法買賣外匯刑事案件適用法律若干問題的解釋&#xff0c;旨在依法懲治非法從事資金支付結算業務、非法買賣外匯犯罪活動&#xff0c;維護金…

python 儀表盤_如何使用Python刮除儀表板

python 儀表盤Dashboard scraping is a useful skill to have when the only way to interact with the data you need is through a dashboard. We’re going to learn how to scrape data from a dashboard using the Selenium and Beautiful Soup packages in Python. The S…

VS2015 定時服務及控制端

一. 服務端 如下圖—新建項目—經典桌面—Windows服務—起名svrr2. 打到server1 改名為svrExecSqlInsert 右擊對應的設計界面&#xff0c;添加安裝服務目錄結構如圖 3. svrExecSqlInsert里有打到OnStart()方法開始寫代碼如下 /// <summary>/// 服務開啟操作/// </su…

css文件如何設置scss,Webpack - 如何將scss編譯成單獨的css文件?

2 個答案:答案 0 :(得分&#xff1a;3)這是我在嘗試將css編譯成單獨文件時使用的webpack.config.js文件|-- App|-- dist|-- src|-- css|-- header.css|-- sass|-- img|-- partials|-- _variables.scss|-- main.scss|--ts|-- tsconfig.json|-- user.ts|-- main.js|-- app.js|-- …

Iphone表視圖的簡單操作

1.創建一個Navigation—based—Application項目&#xff0c;這樣Interface Builder中會自動生成一個Table View&#xff0c;然后將Search Bar拖放到表示圖上&#xff0c;以我們要給表示圖添加搜索功能&#xff0c;不要忘記將Search Bar的delegate連接到File‘s Owner項&#xf…

PhantomJS的使用

PhantomJS安裝下載地址 配置環境變量 成功&#xff01; 轉載于:https://www.cnblogs.com/hankleo/p/9736323.html

aws emr 大數據分析_DataOps —使用AWS Lambda和Amazon EMR的全自動,低成本數據管道

aws emr 大數據分析Progression is continuous. Taking a flashback journey through my 25 years career in information technology, I have experienced several phases of progression and adaptation.進步是連續的。 在我25年的信息技術職業生涯中經歷了一次閃回之旅&…

21eval 函數

eval() 函數十分強大 ---- 將字符串 當成 有效的表達式 來求職 并 返回計算結果 1 # 基本的數學計算2 print(eval("1 1")) # 23 4 # 字符串重復5 print(eval("* * 5")) # *****6 7 # 將字符串轉換成列表8 print(eval("[1, 2, 3, 4]")) # [1,…

聯想r630服務器開啟虛擬化,整合虛擬化 聯想萬全R630服務器上市

虛擬化技術的突飛猛進&#xff0c;對運行虛擬化應用的服務器平臺的運算性能提出了更高的要求。近日&#xff0c;聯想萬全R630G7正式對外發布。這款計算性能強勁&#xff0c;IO吞吐能力強大的四路四核服務器&#xff0c;主要面向高端企業級應用而開發。不僅能夠完美承載大規模數…

Iphone屏幕旋轉

該示例是想在手機屏幕方向發生改變時重新定位視圖&#xff08;這里是一個button&#xff09; 1.創建一個View—based Application項目,并在View窗口中添加一個Round Rect Button視圖&#xff0c;通過尺寸檢查器設置其位置&#xff0c;然后單擊View窗口右上角的箭頭圖標來旋轉窗…

先進的NumPy數據科學

We will be covering some of the advanced concepts of NumPy specifically functions and methods required to work on a realtime dataset. Concepts covered here are more than enough to start your journey with data.我們將介紹NumPy的一些高級概念&#xff0c;特別是…

lsof命令詳解

基礎命令學習目錄首頁 原文鏈接&#xff1a;https://www.cnblogs.com/ggjucheng/archive/2012/01/08/2316599.html 簡介 lsof(list open files)是一個列出當前系統打開文件的工具。在linux環境下&#xff0c;任何事物都以文件的形式存在&#xff0c;通過文件不僅僅可以訪問常規…

Xcode中捕獲iphone/ipad/ipod手機攝像頭的實時視頻數據

目的&#xff1a;打開、關閉前置攝像頭&#xff0c;繪制圖像&#xff0c;并獲取攝像頭的二進制數據。 需要的庫 AVFoundation.framework 、CoreVideo.framework 、CoreMedia.framework 、QuartzCore.framework 該攝像頭捕抓必須編譯真機的版本&#xff0c;模擬器下編譯不了。 函…

統計和冰淇淋

Photo by Irene Kredenets on UnsplashIrene Kredenets在Unsplash上拍攝的照片 摘要 (Summary) In this article, you will learn a little bit about probability calculations in R Studio. As it is a Statistical language, R comes with many tests already built in it, …

信息流服務器哪種好,選購存儲服務器需要注意六大關鍵因素,你知道幾個?

原標題&#xff1a;選購存儲服務器需要注意六大關鍵因素&#xff0c;你知道幾個&#xff1f;信息技術的飛速發展帶動了整個信息產業的發展。越來越多的電子商務平臺和虛擬化環境出現在企業的日常應用中。存儲服務器作為企業建設環境的核心設備&#xff0c;在整個信息流中承擔著…

t3 深入Tornado

3.1 Application settings 前面的學習中&#xff0c;在創建tornado.web.Application的對象時&#xff0c;傳入了第一個參數——路由映射列表。實際上Application類的構造函數還接收很多關于tornado web應用的配置參數。 參數&#xff1a; debug&#xff0c;設置tornado是否工作…