Time of Update: 2018-12-05
UITableView在iOS開發中會經常使用,對於行數很多的UITableView,可以通過UITableViewCell的重用,來保證執行效率。源碼下載點擊這裡。我們通過代碼來探索UITableViewCell重用的實現,下面是一段使用UITableView的代碼,- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ static
Time of Update: 2018-12-05
最近在做項目時,使用UIView的時候,有點唯唯諾諾,生怕出錯,所以重新讀了一遍文檔中UIView類的OverView,許多模糊的問題,得到了答案,真是侯捷先生的那句“勿在浮沙築高台”。本文章的前半部分為文檔中UIView概述的翻譯,後半部分為自己的一些理解和一些代碼執行個體。UIView概述UIVIew定義UIView類,按照UIView的OverView定義一個螢幕上矩形地區和用來管理這個地區內容的一些介面。在運行時,一個視圖對象處理它地區內內容的渲染(註:CALayer),並且處理這個地區
Time of Update: 2018-12-05
關於nil和 null和NSNull的區別及相關問題1、nil和null從字面意思來理解比較簡單,nil是一個對象,而NULL是一個值,我的理解為nil是將對象設定為空白,而null是將基本類型設定為空白的,個人感覺有點像屬性當中,基本類型分配為assign NSString類型一般分配copy,而對象一般用retain。而且我們對於nil調用方法,不會產生crash或者拋出異常。看一段nil -> Null-pointer to objective- c objectNIL ->
Time of Update: 2018-12-05
public void Request<T>(List<T> EntityList) where T : class{}這是參數類型約束,指定T必須是Class類型。 .NET支援的型別參數約束有以下五種:where T : struct | T必須是一個結構類型where T : class | T必須是一個Class類型where T :
Time of Update: 2018-12-05
1、統計Xcode項目程式碼數 1 開啟終端。 2 用ls和cd進到你項目的路徑。 3 輸入下面的指令: grep -r "\n" classes | wc -l (classes,為專案檔所在檔案夾)(或者用grep -d recurse "\n" classes | wc -l )這裡是使用unix命令來完成行數統計,其中首先使用grep 尋找指定路徑的源檔案含有分行符號的字串,然後用 wc命令完成統計,還可以使用-w統計字數。2、Xcode
Time of Update: 2018-12-05
Cocoa Touch架構提供兩種記憶體管理方式,一種自動記憶體計數ARC(Automatic Reference Counting ),另一種手動引用技術(manual reference counting)。對於後一種需要程式員自己retain和release,其原則是“責任落實”,誰建立了對象(或保留了以建立的對象),誰就是該對象的擁有方,不再使用時,則要負責釋放該所有權。在手動管理記憶體時,以下有一些注意點1
Time of Update: 2018-12-05
閱讀本文前,請先去下載原始碼(傳送門)MBProgressHUD是一個iOS的類,當等待後台進程執行時,可以顯示出一個包含指標或者標籤的半透明的HUD。HUD是UIKit包中不允許開發人員使用的UIProgressHUD的替代品。使用前提MBProgressHUD可以以ARC或者non-ARC方式運行在iOS的任何版本,它使用到下列Cocoa
Time of Update: 2018-12-05
e是個指標,它指向的類型是個長度為2的數組。 #include "stdafx.h"#include <iostream>using namespace std;//直接定於typedef doube(*)() (*e)[2];不行,但用以下兩句代替:typedef double (*pFun)();//定義函數指標pFuntypedef pFun (*e)[2];//定義型別e,是個指標double
Time of Update: 2018-12-05
xib檔案設計原則1 始終用消極式載入設計nib檔案,只用當nib檔案中的這些對象馬上就要使用時,才載入nib檔案。2 儲存重複的使用者介面組件(例如文件視窗)在單獨的nib檔案。3 對於偶爾使用的視窗和菜單,存在一個單獨的nib檔案中,通過這樣的方式,將在正真用到它的時候,再將其資源載入到記憶體。4 使 File’s
Time of Update: 2018-12-05
在程式開發中,我們需要經常需要即時輸出一些運行資料來判斷程式是否正確的運行,在IOS開發中,NSLog很像printf和println,會在控制台裡面格式化的輸出結果。使用NSLog輸出,對應不同的對象需要用不同的格式化字元,NSLog的格式如下所示:%@ 對象 %d, %i 整數 %u 無符整形 %f 浮點/雙字 %x, %X 二進位整數 %o 八進位整數 %zu size_
Time of Update: 2018-12-05
動畫效果是IOS介面重要的特色之一,其中CAAnimation是所有動畫對象的抽象父類,作為新人,使用較多的是UIView下的動畫方法(類方法)。使用UIView下的動畫,有下面幾個方法。方法一:設定beginAnimations其中memberView為需要添加的子視圖的視圖,mivc.view為子視圖,在使用的時候,需要將這兩個地方替換 [UIView beginAnimations:@"view flip" context:nil]; [UIView
Time of Update: 2018-12-05
前段時間,調試一段骨灰級代碼,在VC6.0下,使用CFtpFileFind,在FTP伺服器上,尋找指定檔案,發現執行個體化的CFtpFileFind對象,只能執行一次,再次執行則報出訪問系統記憶體的錯誤。百思不得其解,後來F11調試至CFtpFileFind的內建函式,發現是其報錯。然後找到瞭解決方法: pFtpConnection = m_pFtpConnection; CFtpFileFind f(pFtpConnection);
Time of Update: 2018-12-05
常有編碼方式有很多種,現在列出之間的轉換方式NSString To UFT-8 NSString *str2 =@"深"; const char * s = [str2 UTF8String]; 出現類似這樣格式的欄位"\\U6df1\\U5733\\U56fd\\U5f00\\U884c01\\U673a\\U623",通常為Unicode碼,轉換測試函數為- (NSString *)replaceUnicode:(NSString *)unicodeStr {
Time of Update: 2018-12-05
轉載:Mac下svn command命令svn help command 擷取子命令說明svn info $URL 查看工作空間資訊svn list 顯示目前的目錄下svn記錄檔案清單,不訪問版本庫svn list $URL 不下載到本地查看目錄中的檔案svn log 5:19 查看版本5到19的曆史資訊svn log 查看目前的目錄的曆史修改資訊svn log filename 查看單個檔案的曆史修改資訊svn log $URL 查看$URL的曆史資訊
Time of Update: 2018-12-05
繼續看xib檔案的一些組件,如:圖中Object,可以看作以一個臨時的對象容器,如果有什麼需要xib檔案去建立的對象,便可以在將Object拖入xib檔案,並設定。圖中的External Object 是xib檔案外的對象,但會和xib檔案unarchive後的對象有關係,所以在xib中表示這些外部對象,使用的是預留位置(placeholder),xib檔案中的file's owner 就是一個External Object
Time of Update: 2018-12-05
首先看一段代碼:void a(){int arr[10];int i;for(i=0;i<10;i++){arr[i]=i; // 初始化數組arr[]}}void b(){int arr2[10]; int i;for(i=0;i<10;i++){printf("%d", arr2[i]); //未初始化arr2[],直接輸出它的值}// 結果是輸出0123456789}int _tmain(int argc, _TCHAR* argv[]){a();b();
Time of Update: 2018-12-05
C#中的Managed 程式碼是什麼分析:Managed 程式碼(Managed Code)實際上就是中繼語言(IL)代碼。代碼編寫完畢後進行編譯,此時編譯器把代碼編譯成中繼語言(IL),而不是能直接在你的電腦上啟動並執行機器碼。程式集(Assembly)的檔案負責封裝中繼語言,程式集中包含了描述所建立的方法、類以及屬性的所有中繼資料。Managed
Time of Update: 2018-12-05
使用vc6.0。mfc單文檔程式。效果:初始時,有上下兩個視窗,但只有下面的視窗顯示;點擊分割條,上視窗顯示;再點擊分割條,上視窗隱藏。 1)建立CSplitterWnd的衍生類別CMySptWnd。class CMySptWnd : public CSplitterWnd並定一個成員變數bool m_bIs;,初始化為false 2)分割成上下兩個視窗。 BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext*
Time of Update: 2018-12-05
一。【action<>】指定那些只有輸入參數,沒有傳回值的委託1.1定義一個委託:比如,我們原來寫委託:public delegate void myDelegate(string str); 這個委託表示,它只能委託那些只有一個輸入值而沒有傳回值的方法,比如下面的這個方法。1.2定義方法public static void HellowChinese(string strChinese) { Console.WriteLine("早上好," +
Time of Update: 2018-12-05
StoryBoard是IOS5的新特性之一,把程式View的設計弄成了繪畫板(storyboard),它讓枯燥程式猿們體驗了下做一次畫家。如果是第一次接觸StoryBoard,想用StoryBoard做一個最簡單的IOS程式,我建議點傳送門,這是一篇不錯的入門教程,有比較多的圖。 原先是通過File's