On Wed, Jan 14, 2015 at 8:21 PM, Michael McGlothlin <
mike.mcgloth...@gmail.com> wrote:

>   public class SubtitleTableViewCell : UITableViewCell {
>   public SubtitleTableViewCell () : this ( typeof ( SubtitleTableViewCell
> ).FullName ) {
>   }
>
>
>   public SubtitleTableViewCell ( string reuseIdentifier ) : base (
> UITableViewCellStyle.Subtitle, reuseIdentifier ) {
>   }
>
>
>   protected SubtitleTableViewCell ( IntPtr handle ) : base ( handle ) {
>   }
>  }
>
>
This is not a correct pattern, iOS will not call the constructors that set
the Subtitle constructors.

However I'm not sure what the correct code is; a quick google search
indicates that you'll need a constructor that takes an NSCoder, but that
might not be correct.

I recommend that you ask in the forums or on stackoverflow, that'll get
much more visibility to your question (few people read this mailing list
now).

Rolf



>
> If I use a class like this then I get a cell of the default style. If I
> don't pass the pointer to base ( handle ) then it uses the subtitle style.
>
>
> On Wed, Jan 14, 2015 at 12:55 PM, Rolf Bjarne Kvinge <r...@xamarin.com>
> wrote:
>
>> Hi,
>>
>> You should chain to the corresponding base constructor like this:
>>
>> public MyTableViewCell (IntPtr handle) : base (handle)
>> {
>> ...
>> }
>>
>> if that doesn't work, something else is going wrong. Can you show your
>> MyTableViewCell code?
>>
>> Rolf
>>
>> On Wed, Jan 14, 2015 at 6:16 PM, Michael McGlothlin <
>> mike.mcgloth...@gmail.com> wrote:
>>
>>> In experimenting it seems you need an actual subclass to set the cell
>>> style as you never manually call the cell constructor and there is no other
>>> way to choose the style.
>>>
>>> If I pass the handle to base ( handle ) it appears that the default
>>> constructor, that configures the style and reuse identifier by passing
>>> these to base ( style, reuseIdentifier ), never gets called?
>>>
>>> I probably won't actually use the styles anyway but it doesn't seem to
>>> work as I'd expect. Mostly trying to get a clearer picture of what is going
>>> on. Since starting transitioning to Universal I've noticed several
>>> behaviors that seem odd. Trying to determine if I'm doing something new, if
>>> things changed, or if they're bugs.
>>>
>>> I noticed yesterday that it is now ok for that special constructor to be
>>> protected instead of public. It didn't work on one computer but did on the
>>> other .. after the second finished updating Xamarin Studio then it worked
>>> on both. So I guess it's actively being worked on?
>>>
>>>
>>> Thanks,
>>> Michael McGlothlin
>>> Sent from my iPhone
>>>
>>> On Jan 14, 2015, at 10:49 AM, Jeff Stedfast <j...@xamarin.com> wrote:
>>>
>>> Hi Michael,
>>>
>>> Hopefully one of the Xamarin.iOS devs can chime in, but the IntPtr
>>> handle that is passed to .ctors is the native object pointer.
>>>
>>> If you don't pass it to base, then what happens is that the Xamarin.iOS
>>> runtime creates a new native instance.
>>>
>>> My understanding is that you have this:
>>>
>>> public MyTableViewCell (IntPtr handle) : base (handle)
>>> {
>>> ...
>>> }
>>>
>>> and that you are removing the call to base()...
>>>
>>> You shouldn't be doing that afaik.
>>>
>>> This .ctor is meant only to be used by the runtime itself and should not
>>> be invoked by your code (it doesn't sound like you are invoking it
>>> yourself, but just in case that wasn't obvious).
>>>
>>> I'm not sure if that really helps answer your overall question, but
>>> hopefully it at least helps clarify things a little bit for you.
>>>
>>> Jeff
>>>
>>> On Wed, Jan 14, 2015 at 11:40 AM, Michael McGlothlin <
>>> mike.mcgloth...@gmail.com> wrote:
>>>
>>>> It appears that custom UITableViewCells must have a constructor that
>>>> takes IntPtr for the automatic reuse to work but I can't see anywhere that
>>>> says what this pointer is? It seems if I pass the pointer to the base that
>>>> the cell doesn't work right but if I ignore the pointer it does work right?
>>>>
>>>> Thanks,
>>>> Michael McGlothlin
>>>> Sent from my iPhone
>>>> _______________________________________________
>>>> MonoTouch mailing list
>>>> MonoTouch@lists.ximian.com
>>>> http://lists.ximian.com/mailman/listinfo/monotouch
>>>>
>>>
>>>
>>> _______________________________________________
>>> MonoTouch mailing list
>>> MonoTouch@lists.ximian.com
>>> http://lists.ximian.com/mailman/listinfo/monotouch
>>>
>>>
>>
>
_______________________________________________
MonoTouch mailing list
MonoTouch@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/monotouch

Reply via email to