<span id="Label3"></p><p><span style="font-size: 14px;">the <span style="font-size: 14px;">1.IOS UI first created Uiviewcontroller to manage the uiview, and then, after creating the uiview, each UIView created a different UI Control. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">2. Connection error, terminating app due to uncaought exception ' nsunknowkeyexception ', reason: ' [<viewcontroller> setValue : Forundefinedkey:]: This class was not key value coding</span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">3. All attribute and method declarations are best placed inside the class private extension of the VIEWCONTROLLER.M File. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">The 4.transform attribute is created using the Cgaffinetransformmaketranslation () method, which is based on the initial state, and each pass parameter is equivalent to a re-assignment, only with the initial state as the reference and not Superimposed. You can use the Self-increment or decrement variable as a parameter or use Cgaffinetransformtranslate (), which uses the current transform as a parameter and then returns a new transform that can be superimposed. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">5.transform rotation is also the same using the Cgaffinetransformmakerotation () method can only be valid once. The corresponding method of ibid is cgaffinetransformrotate (). </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">6. The same transform also has a zoom-out function, using the Cgaffinetransformmakescale and Cgaffinetransformscale methods. The parameter is the ratio of x, y and 1 to the original Scale. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">7.copy:nsstring; Strong: General objects; Weak:ui control; Assign: Basic Data type;</span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">8.storyboard is used to describe the entire software interface, Xib is used to describe the local software interface. </span></span><br><br><span style="font-size: 14px;">the <span style="font-size: 14px;">function of each field in parentheses in 9.property</span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">assign: simple copy, without changing index count (Reference counting), corresponding to the underlying data class</span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">copy: Create an object with an index count of 1 and then release the old object, corresponding</span> to the NSString</span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Retain: frees the old object, assigns the Object's value to the input object, and then increases the input Object's index count to 1, corresponding to the other nsobject and its subclasses</span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">the difference between weak and strong: when an object is not pointing to it in a strong-type pointer, it is released, even if a pointer to the weak type points to it. Once the last strong type pointer is left, all remaining weak-type pointers will be cleared. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">the difference between copy and Strong: 1.copy is created by an identical object, while retain is Not. 2.copy is a copy of the content, retain is a pointer copy. 3.copy is a copy of the content, for nsstring, but if it is a nsarray type, just copy the pointer to the element in the array, which is "shallow copy." </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Atomic and nonatomic:atomic are a thread-protection technique that prevents the write from being read by another thread when it is not completed, and can be turned on nonatomic if no multi-threading is Used. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">10. How to add the minus sign in front of the method???? </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">11.xcode Custom code snippet @property (nonatomic, Retain) < #type #> *< #name #>;</span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Select the code that we just entered and drag it to the Snippets library. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Scroll to the bottom of the Code Snippets Library and find an icon with a "User" text above the curly Braces. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Click the icon and a window will pop up. Then click the Edit button at the bottom left of the window</span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">in both title and completionshortcut, enter the title and shortcut key for the Snippet. Shortcut keys are used to activate code hints, and headings appear in code Hints. In this example, we enter the title "objective-c @property retain", and the shortcut key is "@property". </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Select the corresponding platform, language, and completion Scopes. Then click on the "done" button. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">in this example, platform we choose All;language objective-c;completion Scope Select class Interface METHODS. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">Completion scope Specifies the valid areas of the shortcut keys for activating code hints, such as the class Interface methods that we have chosen to indicate that the shortcut key for this code activates the code hint in the area where the class method is declared, and in any other area, No matter how you hit the shortcut, there's no hint of this code. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">12.ScrollView Proxy Implementation: 1. Implement the Protocol Uiscrollviewdelegate in a class. 2. In this class you can implement the optional method in the Proxy. 3. Set scrollview.delegate = this class. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">advantage: You can let an object a listen to the change of the state of the object b, the same as object a notifies the object B of its own State change. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">13.OSI seven-layer model: physical layer, Data Link layer, Network layer, Transport layer, session layer, presentation layer, application layer</span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">TCP/IP Four layer model: host to network layer, Network connection layer, Transport layer, Application layer</span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">14.UiTableView You can set the RowHeight property directly to set the uniform row height. </span></span><br><span style="font-size: 14px;"><span style="font-size: 14px;">using the delegate protocol to implement the Heightforrowatindexpath method, you can set the row height for the line number. </span></span><br><br><span style="font-size: 14px;"><span style="font-size: 14px;">15.UITableView A memory problem occurs when using numberofrowsinsection, because this method is called when the cell enters the screen display range, and if an object enters the screen display range more than once, This method will open up space for the data several times, although cells leaving the screen range will be destroyed automatically, but the constant creation of destruction will give the CPU Pressure. The correct approach should be to look for the available cells in the UITableView buffer pool when the object is created, and if it does not find a usable re-opening space, if it is found, the property will be re-written directly. You need to reuseidentifier this attribute to identify different cells when creating and searching. The method to be looked for is the UITableView method Dequeuereuseablecellwithidentifier:</span></span></p><p><p><span style="font-size: 14px;">--------------------------------------manual Split line-----------------------------------------</span></p></p><p><p>iOS Learning Notes</p></p></span>
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.
A Free Trial That Lets You Build Big!
Start building with 50+ products and up to 12 months usage for Elastic Compute Service