Re: Put UICollectionView within UITableViewCell

2018-03-09 Thread Cosmo Birch
But you presumably know the width (i.e. the CollectionView width minus any 
insets), and you can calculate the height based on that with NSString or 
NSAttributedString boundingRect functions. Assuming you have a subclass for 
your CollectionViewCell, you can add a method to return your cell height based 
on its contents layout.

> On Mar 9, 2018, at 8:21 AM, Gary L. Wade  wrote:
> 
> @Cosmo
> 
> My collection items contain label, so I don’t know the exact sizes before 
> hand.
> 

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: Put UICollectionView within UITableViewCell

2018-03-09 Thread Cosmo Birch
Where I work we have spent a fair amount of trying unsuccessfully to get 
self-sizing collection view cells to work as described by Apple documentation 
with UICollectionViews that have any sort of complexity. I would suggest trying 
to implement the sizeForItemAtIndexPath delegate method to see if that solves 
your problem. Sorry if the name of the method is slightly off. I can’t look it 
up at the moment.

> On Mar 9, 2018, at 8:00 AM, Glen Huang  wrote:
> 
> Hi,
> 
> I asked a question about putting UICollectionView within UITableViewCell on 
> Apple Developer Forums (https://forums.developer.apple.com/thread/98176), but 
> it doesn’t get many replies. I’m not sure if it’s ok to repost the question 
> here. I apologize if it’s not.
> 
> Here is the question:
> 
> Hi, I'm trying to create a table view with cell content like this
> 
> | Label |  
> | CollectionItem 1   CollectionItem 2  CollectionItem 3 |  
> | CollectionItem 4  |  
> 
> Collection view item should auto wrap at cell end, both the collection view 
> and table view use automatic height.
> 
> I can somewhat achieve this effect by doing:
> put the label and the collection view in a vertical stack view, make the 
> stack view's each edge touch table cell's corresponding edge.
> disable collection view scrolling.
> collection view's intrinsicContentSize returns layout's 
> collectionViewContentSize value.
> in table cell's prepareForReuse method, I make the collection view reload its 
> data.
> 
> But the problem comes when each table cell can contain different number of 
> collection items: some table view cells have incorrect heights, clipping its 
> collection view. My guess is that when table cells get reused, they don't 
> take collection view's new intrinsicContentSize into account.
> 
> I tried calling sizeToFit/layoutIfNeeded/updateConstraints in cell's 
> prepareForReuse method, none of them works.
> 
> If I replace the collection view with a multiline label, and make each cell 
> contain different length of text, the cells all have correct heights.
> 
> I wonder why label are able to correctly resize cells? how can I make 
> collection views do the same?
> 

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com


Re: How to Open Dictionary

2016-09-02 Thread Cosmo Birch
You might find this site helpful: 
http://useyourloaf.com/blog/swift-string-cheat-sheet/ 

> On Sep 2, 2016, at 2:08 AM, Gerriet M. Denkmann  wrote:
> 
> How to translate this into Swift (current version, i.e. the one before 3.0):
> 
> UITextView *uitv = …
> NSRange selectedRange = uitv.selectedRange;
> NSString *textString = uitv.string;
> NSString *selectedString = [ textString substringWithRange: selectedRange ];
> 
> Looks simple, but I have now tried for more than one hour.

___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Re: Stopping the initial storyboard viewcontroller being created

2015-11-26 Thread Cosmo Birch
If I understand correctly, simply unchecking the “Is Initial Controller” 
checkbox for the viewController in the Storyboard should fix your problem.

> On Nov 26, 2015, at 5:27 AM, Roland King  wrote:
> 
> I would like to create the main viewcontroller in my 
> applicationDidFinishLaunching:withOptions: method (iOS) instead of having the 
> storyboard one created automatically. 
> 
> I’m doing this in order to change behaviour between simulator and device as 
> the simulator doesn’t support BlueTooth, so I need to fix in a simulated 
> version. 
> 
> I have the code to create the initial view controller and fix it up
> 
>   let storyboard = UIStoryboard(name: "Main", bundle: nil)
>   self.window?.rootViewController = 
> storyboard.instantiateInitialViewController()
>   // make a fix to the viewcontroller here
>   self.window?.makeKeyAndVisible()
> 
> however I’ve found that standard machinery still creates one for me so I end 
> up with two of them, possibly with the one I want on-screen, possibly not, 
> and the first one created doesn’t do the decent thing and release itself 
> either, so two of them persist. (I don’t understand what’s referencing it 
> either, when I assign to the rootViewController it ought to go away but 
> doesn’t). 
> 
> How do I stop the standard storyboard initial viewcontroller load so I can do 
> it myself. 


___

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com