<?xml version='1.0' encoding='UTF-8'?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/" xmlns:blogger="http://schemas.google.com/blogger/2008" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-7064196</atom:id><lastBuildDate>Fri, 26 Jun 2026 14:53:55 +0000</lastBuildDate><category>iOS Development</category><category>C#</category><category>Blog</category><category>Design Pattern</category><category>SQL</category><category>Web Tools</category><category>JavaScript</category><category>iPhone Development</category><category>Swift</category><category>VIM</category><category>Xcode</category><category>ASP.NET</category><category>PowerShell</category><category>WWDC</category><category>HTML</category><category>Windows Tools</category><category>Mac</category><category>Visual Studio Tips</category><category>iPhone Applications</category><category>Objective-C</category><category>Dojo</category><category>Open Source Libraries</category><category>Windows</category><category>Healthy Life</category><category>iOS Training</category><category>Visual Studio Tools</category><category>Vimperator</category><category>CSS</category><category>Excel</category><category>HTML SVG</category><category>MVC</category><category>Oracle</category><category>Python</category><category>REST web service</category><category>Security</category><category>mac Software Update</category><category>Batch Scripts</category><category>CAB/SCSF</category><category>COVID-19</category><category>StackOverflow</category><category>Unit Test</category><category>XML</category><category>jQuery</category><category>.Net</category><category>AJAX</category><category>Apple things</category><category>C++</category><category>InfoPath</category><category>Mathematica</category><category>Others</category><category>PL/SQL</category><category>SproutCore</category><category>Subversion</category><category>Wolfram|Alpha</category><category>XSLT XPath</category><category>Android</category><category>ChatGPT</category><category>Code Activity</category><category>Debugging with Xcode and LLDB</category><category>Editor</category><category>Functional Programming</category><category>Google Chrome OS</category><category>Google GO</category><category>HarmonyOS</category><category>Inspiration</category><category>NANT</category><category>OPC</category><category>PHP</category><category>Podcast</category><category>Prototype</category><category>RRS</category><category>TapMyNotes</category><category>VBA</category><category>WMI</category><category>Windows Mobile</category><category>YUI</category><title>Programming Log</title><description>Life is beautiful, and sharing is wonderful. Enjoy and share our programming lives!</description><link>http://davidchuprogramming.blogspot.com/</link><managingEditor>noreply@blogger.com (D Chu)</managingEditor><generator>Blogger</generator><openSearch:totalResults>409</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-1401779515565563108</guid><pubDate>Wed, 29 Oct 2025 23:13:00 +0000</pubDate><atom:updated>2025-11-02T10:09:32.939-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">iPhone Applications</category><category domain="http://www.blogger.com/atom/ns#">TapMyNotes</category><title>My iOS App: Tap to Capture the Moments</title><atom:summary type="text">Background Story
It all started with a conversation in a social group long time ago.
We were discussing a tragic event — a moment that led us to reflect deeply on the meaning of life.
I said something that surprised even myself:
“I’ve written an iOS app. Maybe it could help people — maybe even save a life.”
Someone asked, “Tea Director, what kind of app is it? Could you tell us more?”
I smiled </atom:summary><link>http://davidchuprogramming.blogspot.com/2025/10/my-ios-app-tap-to-capture-moments.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhCV_ZVoXkvHPvY6l2-G7Q_dGjt5EyKciZTeN2GgcXkm9NAtXU-XQTheVQP3eif-6zYZndxcfznW3BnSjnTJjaA1JrufFEzExt4QdNfziZwMudCg6k_CMlZ3i11UyZ3fXDoXZt1zMTB7ScHtpoYw6i3AtvZmS70hgUSkuRCDNu74RvbSwAZezw/s72-c/a1.jpeg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-5298564534062906035</guid><pubDate>Sun, 25 May 2025 17:41:00 +0000</pubDate><atom:updated>2025-10-29T16:17:21.382-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">iPhone Development</category><category domain="http://www.blogger.com/atom/ns#">Xcode</category><title>Accessing iOS App Files</title><atom:summary type="text">iOS apps are built on a sandbox infrastructure, which normally makes it difficult to access the files within an app.

However, as an iOS developer with an app on the App Store, I’ve found a way to view my app’s contents using the Xcode application.
In Xcode, go to Window → Devices and Simulators to open the relevant window. You should see your connected iPhone there. In the Installed APPS panel, </atom:summary><link>http://davidchuprogramming.blogspot.com/2025/05/accessing-ios-app-files.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbTaIbpsa1dLv3WEFxZVhyphenhyphenvr_8UL1ZSlfFAdC4y2mE8t4fZgCeIyjRd1qksPpRA-Tby8nPrRJ2Yk_1fCx36JWKkk0pMZCCF-KePcloxB3yMT33qd0Xn0vISA2GcZoxlNmM9wuVZ4YhKAMrZZqY9m_RLZMIs9jT8XmMH_f_WFBGfJVlVHH4OtI/s72-c/x1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-6166745309714908146</guid><pubDate>Tue, 15 Apr 2025 21:11:00 +0000</pubDate><atom:updated>2025-05-25T12:00:53.236-07:00</atom:updated><title>Common Issue for Updating iOS App </title><atom:summary type="text">
  I have an iOS app listed on the Apple Store. For various reasons, I need to update my app regularly. For example, I have to ensure it keeps up with the constant release of new iOS frameworks, fix bugs discovered by users, and, most importantly, add new features that bring more value to users.

In some of my past updates, I’ve had to make changes to the Core Data database, which involves schema</atom:summary><link>http://davidchuprogramming.blogspot.com/2025/04/common-issue-for-updating-ios-app.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcvYW8iafVGCmguvdvdzgqs1SiqpvIRe1JQ84KZeUx0A0B9kZKX6odnPRfIIsJYzYnyZeETcI-7XyVkk_Xx3btt7ILBws8axkcP2CAV0lPoolri4NskSQZwSccnCjT6NYDQk4TgDbJxNaLHxbOIyxOHvHHvaJGKq_SektqUye-jIM4PjVnIg4/s72-c/tapMyNotes.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-7390836887980702992</guid><pubDate>Wed, 09 Apr 2025 18:11:00 +0000</pubDate><atom:updated>2025-04-15T15:46:23.525-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">ChatGPT</category><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><title>A Conversation with ChatGPT</title><atom:summary type="text">
Recently, I had a very good conversation with ChatGPT about a topic that often goes unnoticed: how to name a variable in a Swift class in my iOS app. This isn&#39;t the kind of question you typically search for on Google or post on StackOverflow (where you might have to wait a day or longer for a response). Yet, I was stuck trying to find a meaningful name—one that clearly conveys its purpose and is</atom:summary><link>http://davidchuprogramming.blogspot.com/2025/04/a-conversation-with-chatgpt.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2UTyg-wfFD7KVwCOTb_Vmr3x11JO2nbXqSF67nM6tLvNMjbGMqiptRvWIi4D9vDsxl8xvQbIgvV4PpINxcUkj2BnhW9o_Tv_RXVrnMZRZ5EJfKx4YL3XqlWtpPzEYYZuH3lD5-TFIMWdHKjY7XtFSgWvioJbs4SisGF71RUC_0xBapn6WE24/s72-c/chatGPT.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-2287771367968383227</guid><pubDate>Tue, 17 Dec 2024 22:04:00 +0000</pubDate><atom:updated>2025-04-14T17:27:39.754-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">HarmonyOS</category><title>Huawei P40</title><atom:summary type="text">The following is based on a note I wrote in WeChat.


  
    
  


Recently, I got a Huawei P40 smartphone. The latest models on the market are the P70 series. Although the P40 is behind the newest models, I can still install HarmonyOS on it. This means I’ll have hands-on experience with Huawei’s new operating system. Based on my initial use of the P40, I find the phone and OS to be quite smooth </atom:summary><link>http://davidchuprogramming.blogspot.com/2024/12/huawei-p40.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1F-ws2XRjCxcaLe2n9i2STJyCSeUejlitZcBSObE4dOXksGLHQI8YL4j9Pu_fZYEaSKM5c88Wjv6GKLqErPsSwQ2B3mQ5cZcpJJTrZrXi8GqeCcA05ScQ6ZAzpHgN_UZkJ4wQAEe0vMObqiI727fC0NlW0nZk_69xt7pdI_xRE447eQML_So/s72-c/1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-4751235158829440040</guid><pubDate>Tue, 11 Jun 2024 16:07:00 +0000</pubDate><atom:updated>2024-06-11T09:47:13.295-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Web Tools</category><title>WeChat and Long Image</title><atom:summary type="text">I use WeChat a lot for Chinese social network. Recently, I found a very good tool in WeChart, WeChart note. It is simple yet very handy. Basically it is for text note, but it has a range formats for text enhancement, such as bold, italic, underline, coloured background, and list. My favourate feature is that image can be embeded in the note.

WeChat note is for user cloud uses. I can crate notes </atom:summary><link>http://davidchuprogramming.blogspot.com/2024/06/wechat-and-long-image.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjPtvOvQUL7GOinQ8UaV2EJ20AtVAZq2ssnhhkwGlwNz-NKevpNV5V2qpUufI5casEmpAqlPGFfQ5-Q45BQ8ONidCwPiLEIXOouzx_VB852BF-VWQkRUaMDi0R71qv3xbcGLnglmJrZAeCR_10J7VRT4uiZBN8doLBod-7MYJ3-e0KnnWo2Vvk/s72-c/a.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-2751024679473324718</guid><pubDate>Thu, 28 Mar 2024 23:06:00 +0000</pubDate><atom:updated>2024-03-28T16:06:22.579-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iPhone Applications</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><title>Scope Not Shown When Search Bar Is Activated</title><atom:summary type="text">Recently, I noticed a minor issue after updating iOS. The scope bar did not appear when the search bar was activated. Typically, I prefer to display the scope bar simultaneously with the search bar activation. This allows users to select a scope item before searching.
An Example Case
Here is a snapshot. When I pull down the screen, only the search bar is displayed, but the scope bar is missing.

</atom:summary><link>http://davidchuprogramming.blogspot.com/2024/03/scope-not-shown-when-search-bar-is.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgMIo1gfj2cJv9V4lFprk2G-qf-UJj2b3VsvdsQyiXbKwew0D52rwSfS77Ukng4gcDCo6zUUZEmn7hToPFyp8GTCakyBzHdn6OGnLWAbj5MWJIKjXO63Z_PYnAaDQ4UdEoecucv6IBqo4vhgKtcjQm0RvhMNOyii6NjsRXVIIhNNmI1mB_4nW4/s72-c/s1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-4160629965186099665</guid><pubDate>Thu, 22 Feb 2024 02:56:00 +0000</pubDate><atom:updated>2024-03-26T15:44:58.695-07:00</atom:updated><title>Reveal Liu Qian&#39;s Magic Card Game</title><atom:summary type="text">After Liu Qian&#39;s magic show at the Springs Festival Gala 2024, most people who participated in the game got expected results, but Xiao Ni (show anchor) did not make it. At that time, I thought this was a game with great possibilities for success. Soon, some people resolved the game and pointed out that this could be explained by a mathematical solution or method. Then I did further study on the </atom:summary><link>http://davidchuprogramming.blogspot.com/2024/02/reveal-liu-qians-magic-card-game.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjWJ45Jy2yqYwrVqrZTcUeoZfb1LMRrf-IIUHN-LB3OlpTERpiHfcmOMZpiA970WhAVsk1e3YnN9jme3Wuf0k-PCV6six993iFZxp8VnBrYbAm26pucMRzT8rpwj9syZPVpAoqU_Q6qKShy9M9otzy3mY5rfZGH7kDEmMCH1jtrodT88QLj03zQaqub/s72-c/p1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-1437638997860657213</guid><pubDate>Wed, 14 Feb 2024 23:42:00 +0000</pubDate><atom:updated>2024-02-21T20:42:29.689-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Blog</category><category domain="http://www.blogger.com/atom/ns#">Others</category><title>Liu Qian&#39;s Magic Card Show in TV Gala</title><atom:summary type="text">Liu Qian presented a magic card show at the Chinese Spring Festival TV Gala 2024. Like most magic shows, being interactive with the audience is a very popular way to make the show interesting. Liu&#39;s show was so amazing and well received that even audiants in front of TV could participate and get unexpected and unblievable results.
I watched the show on YouTube. When I saw the amazing result, I </atom:summary><link>http://davidchuprogramming.blogspot.com/2024/02/liu-qians-magic-card-show-in-tv-gala.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj4t2y7y9mSY_F5US6ZtfbFKu3juxdVPQJcLqJDiUGvMDUmUWmj8E9sRRpfrkEne9iwDqyq-gY3sppNgJE5HBdEKoSPKdlvT5uW99pKtv4KvPoIC9_ztB-t3DpBwD8O32eND-waMt4W_EgSvPql8tXoy175qidelqK1Pmc-mJSqwykmXwwPuaymLVhY/s72-c/p1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-3500075800014999150</guid><pubDate>Mon, 29 Jan 2024 03:06:00 +0000</pubDate><atom:updated>2024-01-28T19:06:32.653-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Mac</category><category domain="http://www.blogger.com/atom/ns#">Xcode</category><title>File Diff</title><atom:summary type="text">Today I found a very good article about how to compare two text files. This is a handy tool not only for developers, but also good for people who want to quickly find out diference between files.

In the article, it mentioned 2 ways to access this tool. Actually, there is another very handy method to launch the app: Spotlight Search. Just press Cmd+space, then type FileMerge.
The article explains</atom:summary><link>http://davidchuprogramming.blogspot.com/2024/01/file-diff.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-1683545462987425594</guid><pubDate>Tue, 01 Aug 2023 20:32:00 +0000</pubDate><atom:updated>2023-08-01T13:41:19.757-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Apple things</category><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">WWDC</category><title>WWDC 2023 Video Sessions</title><atom:summary type="text">Apple&#39;s WWDC 2023 is over. In the past month, from Jun 6 to Jul 23, I have watched all videos published by Apple on the web. The following is a complete list of videos I have watched.

Keynotes
Platforms state of the union
17 big &amp; little things at WWDC23
What Apple developers need to know at WWDC23
Add SharePlay to your app
Bring widgets to new places
Bring your game to Mac, Part 1: Make a game </atom:summary><link>http://davidchuprogramming.blogspot.com/2023/08/wwdc23-video-sessions.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-3485955136252201704</guid><pubDate>Thu, 18 May 2023 00:19:00 +0000</pubDate><atom:updated>2023-05-17T17:22:35.316-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">Swift</category><category domain="http://www.blogger.com/atom/ns#">Xcode</category><title>Xcode 14.3 and Navigation Bar Issue</title><atom:summary type="text">Recently, I encountered a very frustrating crash issue in my iOS app. After I updated my Xcode to version 14.3, my app suddenly crashed right at the launch time. I could not find where the crash occurred, even thought I set a break point at the very beginning of my project code.
I posted a question with my case on StackOverflow two days ago. That&#39;s the place where I normally try to get help from </atom:summary><link>http://davidchuprogramming.blogspot.com/2023/05/xcode-143-and-navigation-bar-issue.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-1271088478214678738</guid><pubDate>Sat, 10 Dec 2022 23:30:00 +0000</pubDate><atom:updated>2022-12-10T15:30:12.057-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">WWDC</category><title>WWDC 2022 Video Sessions</title><atom:summary type="text">Last June, Apple hosted WWDC 2022 at its headquarters. Video sessions, from June 7 to 10, are available at the Apple developer site. As usual, I watched those videos in the past few months. Now I&#39;ve finished watching all of them.
The following are videos I watched.
Monday


  
  Apple Design Awards
Keynote
Platforms State of the Union
WWDC22 Day 1 recap
  
  
Tuesday


  
    Add accessibility to</atom:summary><link>http://davidchuprogramming.blogspot.com/2022/12/wwdc-2022-video-sessions.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-2469923541811587650</guid><pubDate>Sat, 03 Sep 2022 19:49:00 +0000</pubDate><atom:updated>2022-12-10T15:04:38.304-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">iPhone Applications</category><title>Unselect cell in tableview if the cell is visible</title><atom:summary type="text">I have an iOS app. The main screen has a tabbar on the bottom with three tab bar items. Here I&#39;ll explain two related tabs. One of them, the “export” tab, is for displaying objects in a tableview. It allows the user to make multiple selections. Another one, the &quot;edit&quot; tab, is for editing objects. If a user makes any changes to objects, any previously selected object items in the export tab will </atom:summary><link>http://davidchuprogramming.blogspot.com/2022/09/unselect-cell-in-tableview-if-cell-is.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgZDxvUdmNGrld_IJ7tCcyGRtjyJYDaxDiRJjYNkV2ktGu7nkwhyvGQ1GoRhSDrpb-K0IZZY1mrQY4szY5Dspe3sKQB2t5gVr4HIuWTXbzgmRBLC7qp1VYhhBhijIh7EGSawfx2h4yaBWenYi63OMemJhGaBRTmkBvBepDDl5njcZiP8BHC/s72-c/3.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-6375181042565568512</guid><pubDate>Fri, 19 Aug 2022 15:09:00 +0000</pubDate><atom:updated>2022-12-10T15:04:22.308-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">iPhone Applications</category><title>iOS Core Data Database Update</title><atom:summary type="text">The Core Data database is the most commonly used as a data store for iOS apps. Nobody could design the database once and never change it again. I occasionally need to make some changes or update my Core Data database.
When the database scheme is changed, for example, adding a new entity, removing an entity, or changing entity fields, how could such kinds of changes affect your app? Would your app</atom:summary><link>http://davidchuprogramming.blogspot.com/2018/09/ios-core-data-database-update.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi7G5SYkvWYuoLf6XL0LNIJDomhH9ShgtaCvXlXkvtyA10I8BlFyMig-F5Iq7qeuxL3k9DaMfSVxL7Dz7_tqt9xnyd0IZBW9Q-mQ19G35MFIrs411I0V3lr7viRmScprvzueSBH/s72-c/dbupdate1.png" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-6456753201644914857</guid><pubDate>Fri, 12 Aug 2022 17:10:00 +0000</pubDate><atom:updated>2022-08-19T07:34:53.440-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">HTML</category><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">iPhone Development</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><title>Building a Bridge between Swift and JS</title><atom:summary type="text">This was a challenge for me to make Swift talk to JS or JS to Swift. I have been working on an iOS app for years. With so many years of practice, I think I am very good at a deep technical level. I have also done a lot of html and JS programming. What I know about JS is mainly based on what I need to do on my blog.
In my app updates, what I need to do is to provide some information to users about</atom:summary><link>http://davidchuprogramming.blogspot.com/2022/08/build-bridge-between-swift-and-js.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj0i10H19a5xSDI8KQNZz_TS1hYFEuMRNeAfG8i5huRj_aSKFS7gM-Fxg8YiCejWN8nJI3k6tS70ECPbw6ZB8aLwLZ6sf2dKhtcNeb6scEi1l4gC2fodsm-i2ycJ3m2ZOeWqGUso0tal323-K0AP75BMHC5GjpUysXCLjPde7XPwPpMX9iY/s72-c/app.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-4448904856212955771</guid><pubDate>Tue, 02 Aug 2022 22:34:00 +0000</pubDate><atom:updated>2022-08-02T15:34:29.056-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">HTML</category><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">JavaScript</category><title>HTML Head Settings</title><atom:summary type="text">Recently, I have been busy working on my iOS updates. One feature I want to add is to provide some information views in the app.
There are many ways to present information on display in an app. I could use a rich-text component or a text view with attributed strings. However, compared to HTML, I prefer to use a web viewer to display HTML content. The most recent update and recommended strategy by</atom:summary><link>http://davidchuprogramming.blogspot.com/2022/08/html-head-settings.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhWomswB34YeexeUUQ3NZYc66_cUEMv-yWucshw--3H0_FQ_COqNv-ApPRyGiOhWmE2KGxgOIyEKQuZZ22jL6c2y3WXG1ceE18yrjJyfXbtN80GWOFhokQVjjknE6XZ0MpZyMyzh_aDwuPhq4XpdvOBXyVdcloUeWGyKAmOMAucmareUfqw/s72-c/blog01.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-4816791804296610594</guid><pubDate>Thu, 12 May 2022 23:52:00 +0000</pubDate><atom:updated>2022-05-12T16:52:01.787-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">C++</category><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">VIM</category><title>Update Block of Codes with VIM</title><atom:summary type="text">Recently I have been working on my iOS app project. One thing I need to do is to update several blocks of codes in a code file. The update is to add directives #if...#endif to the matched block of codes. Those blocks of codes have very similar pattern:



private func configureSearchControllerDelegates(_ sc: UISearchController)
{
 &amp;nbsp;&amp;nbsp;&amp;nbsp;log.logMessage() {
 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;</atom:summary><link>http://davidchuprogramming.blogspot.com/2022/05/update-block-of-codes-with-vim.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB8PUaRP-keo3-0tLv5roPM7l1gUX3KzYajqJtXVeOhBw6GNnapFKTxS4PANuTfN84S-xaQK5WtSpBa1MtZRl_mDOCamKtZPm0OrvAQgmbuenpC6JD2vlX1JZOU7nfEO4yiEVn0TgKveL5sCBe2EADLfQmlEGPBigKljKpe1m5Wht_mPyz/s72-c/a1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-3874858438370238791</guid><pubDate>Fri, 18 Mar 2022 23:46:00 +0000</pubDate><atom:updated>2022-03-19T14:46:53.588-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">VIM</category><title>Removing Duplicated Lines by VIM</title><atom:summary type="text">Recently I have interest in GPS location coordinates. In my TapToCount-3W iOS app, there is a feature to record location information for each tap.
I have been puzzled by a scenarior for long time. For example, if I make several taps at same location, the GPS locations spead within a range, several tens of meters to meters apart, 30 meters or 8 meters as examples.
Further invetigation, I found </atom:summary><link>http://davidchuprogramming.blogspot.com/2022/03/removing-duplicated-lines-by-vim.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/a/AVvXsEj1q3mBtbrEzVXVciokBYMzRdeR-8Xw-L9F6_0dYIXxT68qcGBqpGQLgda08IQWt8Qi12cSMcS72D7KX-vdPLttqkIDPhS3YdJIvbvWEEdPNRul4wenPPEY92DW5P8U9RVcfZ_Q3MFG4pRDK6FETTL3X7HAjgekCLMOqIDzUXs-FIXAPXLJ=s72-c" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-865249217146023800</guid><pubDate>Fri, 26 Nov 2021 21:12:00 +0000</pubDate><atom:updated>2021-11-26T13:19:15.485-08:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">WWDC</category><title>WWDC 2021 Videos</title><atom:summary type="text">This year Apple continued its WWDC online. The second time of the conference videos are much better than the last year. Each one is about less than one hour right on the topic. I waited one month after its finish. In this way, the video list is stable and complete.

The following is the complete list I have watched.


  Add Intelligence to your widgets iOS, macOS Sep 11
AR Quick Look, meet Object</atom:summary><link>http://davidchuprogramming.blogspot.com/2021/11/wwdc-2021-videos.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-2331726601999302885</guid><pubDate>Fri, 25 Sep 2020 15:32:00 +0000</pubDate><atom:updated>2020-09-25T08:32:34.471-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">Xcode</category><title>Xcode 12.0 and ToolChain Error</title><atom:summary type="text">I updated my Xcode two days ago. After the update, I got a warning error about ToolChain failure:&amp;nbsp;
/Library/Developer/Toolchains/swift-2.2-SNAPSHOT-2015-12-10-a.xctoolchain:1:1: failed to load toolchain: &#39;Version&#39; parse error: Could not parse version component from: &#39;swift-2&#39;
There is no further explanation about this error in Xcode. After Google search, I found one solution. It seems that </atom:summary><link>http://davidchuprogramming.blogspot.com/2020/09/xcode-120-and-toolchain-error.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-7523522495144279930</guid><pubDate>Tue, 23 Jun 2020 19:05:00 +0000</pubDate><atom:updated>2020-06-24T10:05:32.447-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">COVID-19</category><category domain="http://www.blogger.com/atom/ns#">iOS Development</category><category domain="http://www.blogger.com/atom/ns#">WWDC</category><title>One-on-One Support from Apple</title><atom:summary type="text">
WWDC2020 was launched this week. In the past, WWDC conferences were all held in US. This year, because of COVID19 and social distance rules，WWDC is the first time on virtual web. The greatest news is that all Apple registered developers are all able to attend the WWDC without paying expensive registration, travel and hotel fees. This is first time Apple trying virtual WWDC.

On the first day, I </atom:summary><link>http://davidchuprogramming.blogspot.com/2020/06/one-on-one-support-from-apple.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjJ-OhHdY86b3hCMDx0_XW5EOTVrePivqNvVCuf0GHxxMsn4rUK7CfRLnfDpxmkLDN17QWRBDNBNwY3mqBI9tSIb5PuHa3-t9YuNpApssYHdfLWNaJHskZqHg-2XeVM865rMp0/s72-c/wwdc1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-8737570475987776738</guid><pubDate>Tue, 21 Apr 2020 02:40:00 +0000</pubDate><atom:updated>2020-04-20T19:40:18.999-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Blog</category><category domain="http://www.blogger.com/atom/ns#">HTML</category><title>Use div for Table Layout in HTML</title><atom:summary type="text">table HTML Tag has been in HTML for long time to show table-like layout. Now div is more powerful tag to display a block of text, and this can be used for table-like layout.

The basic concept is to use css styles as a way to instruct div to show block of text in table-like layout. After search on web, I found a couple ways to use div, and I place the correspoding ccs styles in Blogger&#39;s </atom:summary><link>http://davidchuprogramming.blogspot.com/2020/04/use-div-for-table-layout-in-html.html</link><author>noreply@blogger.com (D Chu)</author><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-4687496001808939499</guid><pubDate>Sun, 05 Apr 2020 17:38:00 +0000</pubDate><atom:updated>2020-04-20T19:18:03.142-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Blog</category><category domain="http://www.blogger.com/atom/ns#">COVID-19</category><category domain="http://www.blogger.com/atom/ns#">HTML</category><category domain="http://www.blogger.com/atom/ns#">VIM</category><title>Use VIM to Clean Up HTML</title><atom:summary type="text">I have set up a blog at Blogger with more than one authors so that we can write our stories, observations about COVID-19. Some authors do not have any knowledge about HTML or how to write clean blogs there. As a result, the blogs they created contains massy HTML tags, either cause them frustration to edit text or inconsistent styles spreading blog text.






I am tech support person working hard</atom:summary><link>http://davidchuprogramming.blogspot.com/2020/04/use-vim-to-clean-up-html.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEibTL5u9NNCT72q58-XLO78ySYyuqa6jdvwyaIrzPui2e7LKLvEe7jiofo6E67QmuMJ7BHQHSRepepDDtQ2-SLEv1EqGJqEli63Wi4hh7JKji2Zig5tDaCTdQyHRnO2q7kxzpsK/s72-c/1.jpg" height="72" width="72"/><thr:total>0</thr:total></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-7064196.post-4103143043393298831</guid><pubDate>Thu, 02 Apr 2020 02:57:00 +0000</pubDate><atom:updated>2020-04-01T20:11:48.294-07:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Blog</category><category domain="http://www.blogger.com/atom/ns#">VIM</category><title>Blogger: Change Background Color &amp; Text Size</title><atom:summary type="text">I have a blog at Blogger. Recently my friends ask me if I could change the background color and increase font size for my posts. After search on web, soon I found solutions.


Change Background Color

First go to Theme, then Edit HTML.

Expand line 9, b: skin section.






Search for &quot;post.background.color&quot;. You will find this as variable definition.






In my Blogger, it is located at line 32</atom:summary><link>http://davidchuprogramming.blogspot.com/2020/04/blogger-change-background-color-text.html</link><author>noreply@blogger.com (D Chu)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjlQJ8AnX85_L5H6RK6WV1A2F9CGv7Q-4bwnYnKi7mgaeOiwoMZyidCXOfKZk8LF1iNWhko4TlQMK0RY2X4PJ-O0_ehVYveXCVPzEu7Pn_JP5CtS_-tCniiNOFMiZGVCiuKnL19/s72-c/vim1.jpg" height="72" width="72"/><thr:total>0</thr:total></item></channel></rss>