Time of Update: 2015-11-29
標籤:最近遇到這樣的需求:從伺服器擷取到一張照片,只需要顯示他的左半部分,或者中間部分等等。也就是截取UIImage指定大小地區。UIImage擴充我的解決方案是對UIImage進行擴充。通過CGImageRef和CGImage完成截取,調用的方法是:CGImageCreateWithImageInRect。擴充類叫UIImage+Crop,具體代碼如下:UIImage+Crop.h#import <UIKit/UIKit.h>typedef NS_ENUM(NSInteger,
Time of Update: 2015-11-29
標籤:勤奮的笨老頭網址:http://www.jianshu.com/p/02ab2b74c451 最近研究了一下UITbleView中非同步載入網狀圖片的問題,iOS應用經常會看到這種介面。一個tableView上顯示一些標題、詳情等內容,在加上一張圖片。這裡說一下這種思路。 為了防止圖片多次下載,我們需要對圖片做緩衝,緩衝分為記憶體緩衝於沙箱緩衝,我們當然兩種都要實現。 由於tableViewCell是有重用機制的,也就是說,記憶體中只有當前可見的cell數目的
Time of Update: 2015-11-29
標籤:英文:TOPE星夜暮晨網址:http://www.jianshu.com/p/88263196fdf0 設計師們似乎擁有著我們這些開發人員所沒有的“魔力”,他們知道如何讓一個應用的介面看起來非常得舒適,以至於有時讓我們有了迫不及待將其複現的衝動。 然而,幾天過去了,我們仍然還停留在設計稿的第一個介面,寫下大段大段的代碼,可是介面卻不是我們想要的那個樣子,這無疑是非常讓人惱火的一件事情。 好訊息是設計師們的“魔力”
Time of Update: 2015-11-29
標籤:英文:David
Time of Update: 2015-11-29
標籤:簡介在企業開發中,一些核心技術或者常用架構,出於安全性和穩定性的考慮,不想被外界知道,所以會把核心代碼打包成靜態庫,只暴露標頭檔給程式員使用(比如:友盟、百度地圖等第三方的sdk)靜態庫和動態庫的存在形式靜態庫:.a 和 .framework動態庫:.dylib 和
Time of Update: 2015-11-29
標籤:羅軒(@luoyibu)網址:http://www.jianshu.com/p/3b2c95e1404f 1. 網狀圖片顯示大體步驟: 下載圖片圖片處理(裁剪,邊框等)寫入磁碟從磁碟讀取資料到核心緩衝區從核心緩衝區複製到使用者空間(記憶體層級拷貝)解壓縮為位元影像(耗cpu較高)如果位元影像資料不是位元組對齊的,CoreAnimation會copy一份位元影像資料並進行位元組對齊CoreAnimation渲染解壓縮過的位元影像 以上4,5,6,7,
Time of Update: 2015-11-29
標籤: 儲存照片到系統相簿這個功能很多社交類的APP都有的,今天我們簡單講解一下,如何將圖片儲存到系統相簿(Photo Album)。建立UIImageView建立UIImageView是為了將照片展示出來,我們是要把UIImage儲存到系統相簿(Photo Album):#define SCREEN [UIScreen mainScreen].bounds.sizeself.image = [UIImage imageNamed:@"iOSDevTip"];UIImageView *
Time of Update: 2015-11-28
標籤:Happy 2009Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2757 Accepted Submission(s): 922Problem DescriptionNo matter you know me or not. Bless
Time of Update: 2015-11-28
標籤: 眾所周知,當我們一不小心走神時,我們的包就會建在一個錯誤的工程中,那麼我們如何在eclipse這款軟體中將包給“變”回來呢?下面我就介紹自己經常用的一種方法。 首先,如所示: 我的“tgcity.java.book3”包本來是應該放在“JavaForBook”這個項目中,可是一不小心就建在上一個項目中,這時我就選中這個包--->然後右擊---->選中“Copy”鍵 其次,選
Time of Update: 2015-11-28
標籤:我們在使用UILable時,在初始化的時候往往都是設定的固定的寬和高,在顯示不同長度的文本時達不到我們想要的視覺效果,或者是不能顯示完稍長的常值內容,滿足不了我們的需求,我們可以根據文本的長度自動調節lable的高 或 寬//初始化時設定的size可以隨便(此時的size會根據文本的多少自動調節) _titleLable = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, WIDTH, 100)];
Time of Update: 2015-11-28
標籤:先明確幾個概念的區別: padding margin都是邊距的含義,關鍵問題得明白是什麼相對什麼的邊距. padding是控制項的內容相對控制項的邊緣的邊距. margin是控制項邊緣相對父控制項的邊距. android:gravity 屬性是對該view 內容的限定.比如一個button 上面的text. 你可以設定該text
Time of Update: 2015-11-28
標籤: Android View座標Left, Right, Top, Bottom 1.分析說明Left, Right, Top, BottomView中對於該欄位說明如下,相對父布局的的位置相對父布局的左邊位置 Left相對父布局的右邊位置 Right 相對父布局的左上邊位置 Top 相對父布局的下邊位置 Bottom 對於上述的理解可以根據二位座標系來理解,(left,right),(top,bottom) 2,對應API的調用如下:視圖左側位置 mView.getLeft()
Time of Update: 2015-11-28
標籤:【分享】Android Studio專用檔案轉換工具:把ANSI檔案批量另存新檔無BOM的UTF-8檔案在Andoird Studio下編譯java檔案時,經常會出現像下面的錯誤:Error:(29, 43) 閿欒: 緙栫爜UTF-8鐨勪笉鍙槧灝勫瓧絎?在這裡,分享一個工具:ANSI檔案批量另存新檔無BOM的UTF-8檔案:把下面代碼用記事本存為AndroidStudioJava編碼.vbs,雙擊即可使用:on error resume next Set WshShell=WScript.
Time of Update: 2015-11-28
標籤:一、前言從這篇文章開始我們開始我們的破解之路,之前的幾篇文章中我們是如何講解怎麼加固我們的Apk,防止被別人破解,那麼現在我們要開始破解我們的Apk,針對於之前的加密方式採用相對應的破解技術,Android中的破解其實大體上可以分為靜態分析和動態分析,對於這兩種方式又可以細分為Java層(smail和dex)和native層(so)。所以我們今天主要來講解如何通過靜態分析來破解我們的apk,這篇文章我們會通過破解Java層和native層的例子來講解。二、準備工作在開始今天的文章之前,我們
Time of Update: 2015-11-28
標籤:21、理解Objective-C錯誤模型@throw [NSException exceptionWithName:NSInternalInconsistencyException reason:@"must be overriden" userInfo:nil]異常只用於處理嚴重錯誤。出現不那麼嚴重的錯誤時,OC語言的編程範式為:令方法返回nil/0,或者使用NSError,表明其中有錯誤發生。-(id)initWithValue:(id)value{if (self = [super
Time of Update: 2015-11-28
標籤: 最近利用業餘時間終於把iOS核心動畫進階技巧(https://zsisme.gitbooks.io/ios-/content/chapter1/the-layer-tree.html)看完,對應其中一些知識做了相應的整理,整理為demo(https://github.com/PurpleSweetPotatoes/Layer_learn)。此demo中都是基於教程書籍中的編程樣本,並加上了註解以方便各位iOS愛好者學習使用。 在這裡利用此教程中的基礎知識做了2個小demo,活動指標效
Time of Update: 2015-11-28
標籤:AndroidRobot目前已經開源了:https://github.com/testerhome/AndroidRobotAndroidRobot是專門為移動無線端測試開發的一款自動化測試載入器,它能夠支援Android平台裝置、APP等測試。目前支援以下功能:1, 清晰簡潔的IDE介面風格2, 支援Python指令碼3, 支援指令碼編寫、控制項的識別、錄製4, 支援Native、Webview控制項識別5, 具有映像比較功能6,
Time of Update: 2015-11-28
標籤:開啟項目以後,點擊項目,選擇 Build 菜單, 然後選擇 Generate Signed APK. 如所示:開啟產生對話方塊:選擇 Create new... 按鈕, 產生新的Key, 彈出新產生對話方塊:首先選擇 Key 儲存的路徑.可能是有BUG, 在彈出的選擇 keystore file 對話方塊中,需要先輸入 File name, 如 ``, 檔案尾碼名 保持預設的 jks
Time of Update: 2015-11-28
標籤:在HTML5標準添加的新元素中,用於常見頁面結 構的包括header footer footer nav aside aside article section hgroup 。下面簡單介紹一下這個元素:1.headerheader>元素定義文檔的頁面組合,通 常是一些引導和導航資訊,標籤內通常包含 secti- on的頭部資訊,如h1~h6 或
Time of Update: 2015-11-28
標籤:目前為止,即使你的介面設計是在合理的複雜度內,你也必須要為之寫許多代碼來適應變化的布局。現在我相信你會很高興聽到這種情況將不會發生了-對於iPhone與iPad IOS6