<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=Mobile_App_Dev_2022W%3A_Assignment_4</id>
	<title>Mobile App Dev 2022W: Assignment 4 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://homeostasis.scs.carleton.ca/wiki/index.php?action=history&amp;feed=atom&amp;title=Mobile_App_Dev_2022W%3A_Assignment_4"/>
	<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;action=history"/>
	<updated>2026-04-06T01:54:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23976&amp;oldid=prev</id>
		<title>Soma at 15:26, 8 April 2022</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23976&amp;oldid=prev"/>
		<updated>2022-04-08T15:26:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 15:26, 8 April 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l24&quot;&gt;Line 24:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 24:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &amp;#039;&amp;#039;&amp;#039;[5 Extra credit]&amp;#039;&amp;#039;&amp;#039; Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&amp;#039;t have to be completely identical.  In particular you don&amp;#039;t need to make the title screen.  It should be reasonably close, however.)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &amp;#039;&amp;#039;&amp;#039;[5 Extra credit]&amp;#039;&amp;#039;&amp;#039; Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&amp;#039;t have to be completely identical.  In particular you don&amp;#039;t need to make the title screen.  It should be reasonably close, however.)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Solutions==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://homeostasis.scs.carleton.ca/~soma/mad-2022w/solutions/comp1601-assign4-sol.txt Assignment 4 Solutions]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23972&amp;oldid=prev</id>
		<title>Soma: /* Questions */</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23972&amp;oldid=prev"/>
		<updated>2022-03-30T19:09:22Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Questions&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 19:09, 30 March 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l23&quot;&gt;Line 23:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &#039;&#039;&#039;[5 Extra credit]&#039;&#039;&#039; Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&#039;t have to be completely identical&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;; however, it &lt;/del&gt;should be reasonably close.)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &#039;&#039;&#039;[5 Extra credit]&#039;&#039;&#039; Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&#039;t have to be completely identical&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;.  In particular you don&#039;t need to make the title screen.  It &lt;/ins&gt;should be reasonably close&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;, however&lt;/ins&gt;.)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23968&amp;oldid=prev</id>
		<title>Soma: /* Questions */</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23968&amp;oldid=prev"/>
		<updated>2022-03-28T17:44:32Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Questions&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 17:44, 28 March 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l23&quot;&gt;Line 23:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &#039;&#039;&#039;[5 &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;EC&lt;/del&gt;]&#039;&#039;&#039; Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&#039;t have to be completely identical; however, it should be reasonably close.)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &#039;&#039;&#039;[5 &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Extra credit&lt;/ins&gt;]&#039;&#039;&#039; Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&#039;t have to be completely identical; however, it should be reasonably close.)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23967&amp;oldid=prev</id>
		<title>Soma: /* Questions */</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23967&amp;oldid=prev"/>
		<updated>2022-03-28T17:44:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Questions&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 17:44, 28 March 2022&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l23&quot;&gt;Line 23:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 23:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# [5 EC] Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&#039;t have to be completely identical; however, it should be reasonably close.)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039;&lt;/ins&gt;[5 EC]&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&#039;&#039;&#039; &lt;/ins&gt;Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&#039;t have to be completely identical; however, it should be reasonably close.)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
	<entry>
		<id>https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23966&amp;oldid=prev</id>
		<title>Soma: Created page with &quot;Please answer all of the following questions in the [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/templates/comp1601-assign4-template.txt supplied template].  Your uploaded file should be named &quot;comp1601-assign4-&lt;i&gt;MCOname&lt;/i&gt;.txt&quot; where MCOname is your MyCarletonOne username (i.e., the username you use to login to Brightspace) and it should be a UNIX text file (LF line endings).  &lt;b&gt;You may use [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/validators/a4-va...&quot;</title>
		<link rel="alternate" type="text/html" href="https://homeostasis.scs.carleton.ca/wiki/index.php?title=Mobile_App_Dev_2022W:_Assignment_4&amp;diff=23966&amp;oldid=prev"/>
		<updated>2022-03-28T17:41:29Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Please answer all of the following questions in the [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/templates/comp1601-assign4-template.txt supplied template].  Your uploaded file should be named &amp;quot;comp1601-assign4-&amp;lt;i&amp;gt;MCOname&amp;lt;/i&amp;gt;.txt&amp;quot; where MCOname is your MyCarletonOne username (i.e., the username you use to login to Brightspace) and it should be a UNIX text file (LF line endings).  &amp;lt;b&amp;gt;You may use [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/validators/a4-va...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Please answer all of the following questions in the [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/templates/comp1601-assign4-template.txt supplied template].  Your uploaded file should be named &amp;quot;comp1601-assign4-&amp;lt;i&amp;gt;MCOname&amp;lt;/i&amp;gt;.txt&amp;quot; where MCOname is your MyCarletonOne username (i.e., the username you use to login to Brightspace) and it should be a UNIX text file (LF line endings).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;You may use [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/validators/a4-validator.html this validator page] to make sure your answer file is properly named and formatted.&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The questions are based on [https://homeostasis.scs.carleton.ca/~soma/mad-2022w/code/PicViewer2 PicViewer2] from [[Mobile App Dev 2022W: Tutorial 9|Tutorial 9]].  There are 9 questions worth 20 points total + one question worth 5 points extra credit.&lt;br /&gt;
&lt;br /&gt;
Do not turn in modified applications.  Instead, when answering code writing questions, include code snippets and explain how they should be used to modify the application.  Use complete sentences when answering.  &amp;#039;&amp;#039;Be sure to list collaborators and outside sources that you used.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
Submit your answers via Brightspace by April 8, 2022 by 11:30 AM.&lt;br /&gt;
&lt;br /&gt;
==Questions==&lt;br /&gt;
&lt;br /&gt;
# [2] If you change the first line of MainActivity.kt to be &amp;quot;package not.a.real.package&amp;quot;, what breaks?  Why?  Explain briefly.&lt;br /&gt;
# [2] If you don&amp;#039;t make the changes in AndroidManifest.xml and just use the default one that you get when you make an empty activity app, what functionality will break?  Why?&lt;br /&gt;
# [2] If you switch the simulator to use a dark theme, can that affect the layout of the app, other than changing the colors?  Why?  (Note: this answer depends on what files you edited when setting up PicViewer2.)&lt;br /&gt;
# [4] How could you change the layout so that the X and Y fields are on the left of the screen and the scale and rotation are on the right? (1 point for the positioning of each value.)&lt;br /&gt;
#* The X and scale should be on the same horizontal line, as should be the Y and rotation fields.  The X and Y fields should be vertically aligned, as should the rotation and scale fields.&lt;br /&gt;
#* Both the Y and rotation fields should be close to the bottom edge of the screen (except for a small margin).&lt;br /&gt;
#* Make sure your layout uses no absolute units except, where necessary, for small offsets from the edges of the screen.&lt;br /&gt;
# [2] Would eliminating the picParamWatcher class and instead putting its code into MainActivity significantly increase the number of lines of code in the program?  Explain briefly.&lt;br /&gt;
# [2] Would eliminating the dragView class and instead putting its code into MainActivity significantly increase the number of lines of code in the program?  Explain briefly.&lt;br /&gt;
# [2] When in the program&amp;#039;s execution is dragView&amp;#039;s picDragged true?  When is it false?  Explain in terms of high level program functionality, not precise lines of code.&lt;br /&gt;
# [2] The image retains its position, rotation, and zoom values when the device is rotated.  Is this because the instances of PicParamWatcher are being preserved?  Or are they being destroyed and re-created when the device is rotated?  Explain, giving empirical evidence in support of your answer.&lt;br /&gt;
# [2] Why does PicParamWatcher need valueChanged?  Explain how the program behaves when this variable is removed along with the code that references it and how the valueChanged-assocated code changes this behaviour.&lt;br /&gt;
# [5 EC] Implement PicViewer2 (as presented in Tutorial 9) as a SwiftUI program, explaining how your program captures the basic look and functionality of the Android program.  Compare the two implementations explaining key design differences.  (Your SwiftUI program doesn&amp;#039;t have to be completely identical; however, it should be reasonably close.)&lt;/div&gt;</summary>
		<author><name>Soma</name></author>
	</entry>
</feed>