Bug 38112

Summary: [Forms][Android] Switch disappearing from TableView ViewCell on Android only
Product: Forms Reporter: Dominic N [MSFT] <dominic>
Component: AndroidAssignee: Samantha Houts [MSFT] <sahou>
Severity: major CC: brendan.zagaeski, chrisntr, dominic, eric.maupin, hvaughan3, jas, parmendrak, paul.dipietro, sahou, seth.rosetter
Priority: Normal    
Version: 2.0.0   
Target Milestone: ---   
Hardware: Macintosh   
OS: Mac OS   
Tags: ac Is this bug a regression?: ---
Last known good build:

Description Dominic N [MSFT] 2016-01-27 22:43:47 UTC
### Overview

Removing a ViewCell from a TableView and then adding it back again results in the Switch control in the ViewCell being non-visible. The sample project attached contains three ViewCells, each with a Switch. When ViewCell 2 is removed, ViewCell 3's Switch moves off screen and seems to become Enabled even though it was previously disabled.

Setting a breakpoint to a position in the code after removing the ViewCell, you can look into the TableSection's children and observe that the IsEnabled property is set to false, even though the screen shows the Switch enabled.

Rotating the screen makes the Switch appear again. This issue occurs only on Android.

### Steps to reproduce

1. Download sample app
2. Run sample app
3. Tap ViewCell 1's Switch
4. Rotate device
5. Rotate device to original position

### Expected behavior

Switch in ViewCell 3 stays disabled and does not run off screen.

### Actual behavior

Switch in ViewCell 3 appears enabled in app and goes off screen. Rotating device brings it back on screen.

### Supplemental info (logs, images, videos)

Test Case: https://www.dropbox.com/s/h1uhcmvgs4n0s6k/AndroidViewCellSwitchBug.rar?dl=0

Video: https://www.dropbox.com/s/mut23zsdqpq1a4n/AndroidViewCellBugVideo480p.mov?dl=0

### Test environment (full version information)


=== Xamarin Studio ===

Version 5.10.1 (build 6)
Installation UUID: ee07b9c8-41e3-496f-a1ab-e8a3ed3db20f
	Mono 4.2.1 (explicit/6dd2d0d)
	GTK+ 2.24.23 (Raleigh theme)

	Package version: 402010102

=== Xamarin.Profiler ===

Location: /Applications/Xamarin Profiler.app/Contents/MacOS/Xamarin Profiler

=== Apple Developer Tools ===

Xcode 7.2 (9536.2)
Build 7C46t

=== Xamarin.iOS ===

Version: (Business Edition)
Hash: 7322991
Branch: master
Build date: 2015-12-08 16:20:29-0500

=== Xamarin.Android ===

Version: (Business Edition)
Android SDK: /Users/dominic/Library/Developer/Xamarin/android-sdk-macosx
	Supported Android versions:
		2.3   (API level 10)
		4.0.3 (API level 15)
		4.1   (API level 16)
		4.2   (API level 17)
		4.4   (API level 19)
		5.0   (API level 21)
		5.1   (API level 22)
		6.0   (API level 23)

SDK Tools Version: 24.4.1
SDK Platform Tools Version: 23.1
SDK Build Tools Version: 23.0.0

Java SDK: /usr
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)

=== Xamarin Android Player ===

Version: 0.6.5
Location: /Applications/Xamarin Android Player.app

=== Xamarin.Mac ===

Version: (Business Edition)

=== Build Information ===

Release ID: 510010006
Git revision: 0b60eecdb531933734519c13257d16a780274aab
Build date: 2015-12-04 20:28:20-05
Xamarin addins: 9876fd7c9837977178411ec7375b4352c0a0d6af
Build lane: monodevelop-lion-cycle6-baseline

=== Operating System ===

Mac OS X 10.10.5
Darwin Dominics-MacBook-Pro.local 14.5.0 Darwin Kernel Version 14.5.0
    Wed Jul 29 02:26:53 PDT 2015
    root:xnu-2782.40.9~1/RELEASE_X86_64 x86_64
Comment 1 Dominic N [MSFT] 2016-01-27 23:04:17 UTC
The customer reported this issue on a Samsung Galaxy SIII Mini. I've been able to reproduce on a Samsung Galaxy S5 and a Motorola Moto E (2nd Gen).

I was unable to reproduce this issue on any iOS device.
Comment 2 Jason Smith [MSFT] 2016-02-09 03:11:16 UTC
This is a issue with TouchWiz, shouldn't be present in the AppCompat backend, hopefully.
Comment 3 Samantha Houts [MSFT] 2016-03-18 02:07:57 UTC
This should be fixed in 2.2.0-pre1.
Comment 4 Parmendra Kumar 2016-04-15 16:35:29 UTC
I have checked this issue with Xamarin.Forms 2.2.0-pre2 and its working fine.

Hence closing this issue.